use diesel::{ dsl::{auto_type, AsSelect}, pg::Pg, prelude::*, }; use uuid::Uuid; use crate::{ schema::{self, projects::dsl::*}, teams::Team, }; #[derive(Associations, Clone, Debug, Identifiable, Insertable, Queryable, Selectable)] #[diesel(table_name = schema::projects)] #[diesel(belongs_to(Team))] pub struct Project { pub id: Uuid, pub team_id: Uuid, pub name: String, } impl Project { #[auto_type(no_type_alias)] pub fn all() -> _ { let select: AsSelect = Project::as_select(); projects.select(select) } }