GeneIT/geneit_backend/src/schema.rs
Pierre Hubert c8ee881b2c
All checks were successful
continuous-integration/drone/push Build is passing
Genealogy as a feature (#175)
Start our journey into turning GeneIT as afully featured family intranet by making genealogy a feature that can be disabled by family admins

Reviewed-on: #175
2024-05-16 19:15:15 +00:00

137 lines
3.5 KiB
Rust

// @generated automatically by Diesel CLI.
diesel::table! {
couples (id) {
id -> Int4,
family_id -> Int4,
wife -> Nullable<Int4>,
husband -> Nullable<Int4>,
#[max_length = 1]
state -> Nullable<Varchar>,
photo_id -> Nullable<Int4>,
time_create -> Int8,
time_update -> Int8,
wedding_year -> Nullable<Int2>,
wedding_month -> Nullable<Int2>,
wedding_day -> Nullable<Int2>,
divorce_year -> Nullable<Int2>,
divorce_month -> Nullable<Int2>,
divorce_day -> Nullable<Int2>,
}
}
diesel::table! {
families (id) {
id -> Int4,
time_create -> Int8,
#[max_length = 30]
name -> Varchar,
#[max_length = 7]
invitation_code -> Varchar,
disable_couple_photos -> Bool,
enable_genealogy -> Bool,
}
}
diesel::table! {
members (id) {
id -> Int4,
family_id -> Int4,
#[max_length = 30]
first_name -> Nullable<Varchar>,
#[max_length = 30]
last_name -> Nullable<Varchar>,
#[max_length = 30]
birth_last_name -> Nullable<Varchar>,
photo_id -> Nullable<Int4>,
#[max_length = 255]
email -> Nullable<Varchar>,
#[max_length = 30]
phone -> Nullable<Varchar>,
#[max_length = 155]
address -> Nullable<Varchar>,
#[max_length = 150]
city -> Nullable<Varchar>,
#[max_length = 12]
postal_code -> Nullable<Varchar>,
#[max_length = 2]
country -> Nullable<Varchar>,
#[max_length = 1]
sex -> Nullable<Varchar>,
time_create -> Int8,
time_update -> Int8,
mother -> Nullable<Int4>,
father -> Nullable<Int4>,
birth_year -> Nullable<Int2>,
birth_month -> Nullable<Int2>,
birth_day -> Nullable<Int2>,
dead -> Bool,
death_year -> Nullable<Int2>,
death_month -> Nullable<Int2>,
death_day -> Nullable<Int2>,
note -> Nullable<Text>,
}
}
diesel::table! {
memberships (user_id, family_id) {
user_id -> Int4,
family_id -> Int4,
time_create -> Int8,
is_admin -> Bool,
}
}
diesel::table! {
photos (id) {
id -> Int4,
#[max_length = 36]
file_id -> Varchar,
time_create -> Int8,
#[max_length = 150]
mime_type -> Varchar,
#[max_length = 130]
sha512 -> Varchar,
file_size -> Int4,
#[max_length = 130]
thumb_sha512 -> Varchar,
}
}
diesel::table! {
users (id) {
id -> Int4,
#[max_length = 30]
name -> Varchar,
#[max_length = 255]
email -> Varchar,
password -> Nullable<Varchar>,
time_create -> Int8,
#[max_length = 150]
reset_password_token -> Nullable<Varchar>,
time_gen_reset_token -> Int8,
#[max_length = 150]
delete_account_token -> Nullable<Varchar>,
time_gen_delete_account_token -> Int8,
time_activate -> Int8,
active -> Bool,
admin -> Bool,
}
}
diesel::joinable!(couples -> families (family_id));
diesel::joinable!(couples -> photos (photo_id));
diesel::joinable!(members -> families (family_id));
diesel::joinable!(members -> photos (photo_id));
diesel::joinable!(memberships -> families (family_id));
diesel::joinable!(memberships -> users (user_id));
diesel::allow_tables_to_appear_in_same_query!(
couples,
families,
members,
memberships,
photos,
users,
);