61 lines
1.4 KiB
Rust
61 lines
1.4 KiB
Rust
use time::Date;
|
|
|
|
#[derive(Queryable, Selectable)]
|
|
#[diesel(table_name = crate::schema::users)]
|
|
#[diesel(check_for_backend(diesel::mysql::Mysql))]
|
|
pub struct User {
|
|
pub id: i64,
|
|
pub username: String,
|
|
pub email: String,
|
|
pub salt: String,
|
|
pub pass: String,
|
|
pub joined: Date,
|
|
}
|
|
|
|
#[derive(Insertable)]
|
|
#[diesel(table_name = crate::schema::users)]
|
|
#[diesel(check_for_backend(diesel::mysql::Mysql))]
|
|
pub struct NewUser {
|
|
pub username: String,
|
|
pub email: String,
|
|
pub salt: String,
|
|
pub pass: String,
|
|
pub joined: Date,
|
|
}
|
|
|
|
#[derive(Queryable, Selectable)]
|
|
#[diesel(table_name = crate::schema::channels)]
|
|
#[diesel(check_for_backend(diesel::mysql::Mysql))]
|
|
pub struct Channel {
|
|
pub id: i64,
|
|
pub user: i64,
|
|
pub name: String,
|
|
pub bio: Option<String>,
|
|
}
|
|
|
|
#[derive(Insertable)]
|
|
#[diesel(table_name = crate::schema::channels)]
|
|
#[diesel(check_for_backend(diesel::mysql::Mysql))]
|
|
pub struct NewChannel {
|
|
pub user: i64,
|
|
pub name: String,
|
|
pub bio: Option<String>,
|
|
}
|
|
|
|
#[derive(Queryable, Selectable)]
|
|
#[diesel(table_name = crate::schema::subscription)]
|
|
#[diesel(check_for_backend(diesel::mysql::Mysql))]
|
|
pub struct Subscription {
|
|
pub subscription_id: i64,
|
|
pub user_id: i64,
|
|
pub channel_id: i64,
|
|
}
|
|
|
|
#[derive(Insertable)]
|
|
#[diesel(table_name = crate::schema::subscription)]
|
|
#[diesel(check_for_backend(diesel::mysql::Mysql))]
|
|
pub struct NewSubscription {
|
|
pub user_id: i64,
|
|
pub channel_id: i64,
|
|
}
|