X-Git-Url: http://these/git/?a=blobdiff_plain;f=crates%2Fdb_schema%2Fsrc%2Fsource%2Fpost_report.rs;h=74e4186702e6e68866b3efdf052cc567a172eb51;hb=f7f6766650b9b573a72075e564aed353c0131cd7;hp=6e711782b88c0c6ad093567328dbd4d50d97e96a;hpb=9e0fa99c695df5d1c5e615d6f5de2b9d4bc91205;p=lemmy.git diff --git a/crates/db_schema/src/source/post_report.rs b/crates/db_schema/src/source/post_report.rs index 6e711782..74e41867 100644 --- a/crates/db_schema/src/source/post_report.rs +++ b/crates/db_schema/src/source/post_report.rs @@ -1,21 +1,27 @@ -use crate::{ - newtypes::{DbUrl, PersonId, PostId, PostReportId}, - schema::post_report, - source::post::Post, -}; +use crate::newtypes::{DbUrl, PersonId, PostId, PostReportId}; +#[cfg(feature = "full")] +use crate::schema::post_report; use serde::{Deserialize, Serialize}; +use serde_with::skip_serializing_none; +#[cfg(feature = "full")] +use ts_rs::TS; -#[derive( - Identifiable, Queryable, Associations, PartialEq, Serialize, Deserialize, Debug, Clone, -)] -#[belongs_to(Post)] -#[table_name = "post_report"] +#[skip_serializing_none] +#[derive(PartialEq, Eq, Serialize, Deserialize, Debug, Clone)] +#[cfg_attr(feature = "full", derive(Identifiable, Queryable, Associations, TS))] +#[cfg_attr(feature = "full", diesel(belongs_to(crate::source::post::Post)))] // Is this the right assoc? +#[cfg_attr(feature = "full", diesel(table_name = post_report))] +#[cfg_attr(feature = "full", ts(export))] +/// A post report. pub struct PostReport { pub id: PostReportId, pub creator_id: PersonId, pub post_id: PostId, + /// The original post title. pub original_post_name: String, + /// The original post url. pub original_post_url: Option, + /// The original post body. pub original_post_body: Option, pub reason: String, pub resolved: bool, @@ -24,8 +30,9 @@ pub struct PostReport { pub updated: Option, } -#[derive(Insertable, AsChangeset, Clone)] -#[table_name = "post_report"] +#[derive(Clone, Default)] +#[cfg_attr(feature = "full", derive(Insertable, AsChangeset))] +#[cfg_attr(feature = "full", diesel(table_name = post_report))] pub struct PostReportForm { pub creator_id: PersonId, pub post_id: PostId,