use crate::schema::users; use diesel::prelude::*; /// User ID holder #[derive(Debug, Clone, Copy, serde::Serialize, serde::Deserialize)] pub struct UserID(i32); #[derive(Queryable, Debug)] pub struct User { id: i32, name: String, email: String, password: Option, reset_password_token: Option, time_create: i64, time_gen_reset_token: i64, time_activate: i64, active: bool, admin: bool, } impl User { pub fn id(&self) -> UserID { UserID(self.id) } } #[derive(Insertable)] #[diesel(table_name = users)] pub struct NewUser<'a> { pub name: &'a str, pub email: &'a str, pub time_create: i64, }