forked from alemi/upub
fix: object view
quite wasteful to do it like this but for some reason previous way didn't work??
This commit is contained in:
parent
bb16a5b7d2
commit
c342b7c936
1 changed files with 5 additions and 4 deletions
|
@ -2,7 +2,7 @@ use axum::{extract::{Path, State}, http::StatusCode};
|
||||||
use sea_orm::{ColumnTrait, QueryFilter};
|
use sea_orm::{ColumnTrait, QueryFilter};
|
||||||
|
|
||||||
use apb::{ObjectMut, BaseMut, Node};
|
use apb::{ObjectMut, BaseMut, Node};
|
||||||
use crate::{model, server::{auth::AuthIdentity, Context}};
|
use crate::{model::{self, addressing::EmbeddedActivity}, server::{auth::AuthIdentity, Context}};
|
||||||
|
|
||||||
use super::{jsonld::LD, JsonLD};
|
use super::{jsonld::LD, JsonLD};
|
||||||
|
|
||||||
|
@ -28,14 +28,15 @@ pub async fn view(
|
||||||
Path(id): Path<String>,
|
Path(id): Path<String>,
|
||||||
AuthIdentity(auth): AuthIdentity,
|
AuthIdentity(auth): AuthIdentity,
|
||||||
) -> Result<JsonLD<serde_json::Value>, StatusCode> {
|
) -> Result<JsonLD<serde_json::Value>, StatusCode> {
|
||||||
match model::addressing::Entity::find_objects()
|
match model::addressing::Entity::find_activities()
|
||||||
.filter(model::object::Column::Id.eq(ctx.oid(id)))
|
.filter(model::object::Column::Id.eq(ctx.oid(id)))
|
||||||
.filter(auth.filter_condition())
|
.filter(auth.filter_condition())
|
||||||
.into_model::<model::object::Model>()
|
.into_model::<EmbeddedActivity>()
|
||||||
.one(ctx.db())
|
.one(ctx.db())
|
||||||
.await
|
.await
|
||||||
{
|
{
|
||||||
Ok(Some(object)) => Ok(JsonLD(ap_object(object).ld_context())),
|
Ok(Some(EmbeddedActivity { activity: _, object: Some(object) })) => Ok(JsonLD(ap_object(object).ld_context())),
|
||||||
|
Ok(Some(EmbeddedActivity { activity: _, object: None })) => Err(StatusCode::NOT_FOUND),
|
||||||
Ok(None) => Err(StatusCode::NOT_FOUND),
|
Ok(None) => Err(StatusCode::NOT_FOUND),
|
||||||
Err(e) => {
|
Err(e) => {
|
||||||
tracing::error!("error querying for object: {e}");
|
tracing::error!("error querying for object: {e}");
|
||||||
|
|
Loading…
Reference in a new issue