use super::UserId; use sea_orm::entity::prelude::*; #[derive(Clone, Debug, Default, PartialEq, Eq, DeriveEntityModel)] #[sea_orm(table_name = "users")] pub struct Model { #[sea_orm(primary_key)] pub id: UserId, pub github_login: String, pub github_user_id: Option, pub email_address: Option, pub admin: bool, pub invite_code: Option, pub invite_count: i32, pub connected_once: bool, pub metrics_id: Uuid, } #[derive(Copy, Clone, Debug, EnumIter, DeriveRelation)] pub enum Relation { #[sea_orm(has_many = "super::access_token::Entity")] AccessToken, #[sea_orm(has_one = "super::room_participant::Entity")] RoomParticipant, } impl Related for Entity { fn to() -> RelationDef { Relation::AccessToken.def() } } impl Related for Entity { fn to() -> RelationDef { Relation::RoomParticipant.def() } } impl ActiveModelBehavior for ActiveModel {}