feat: initial user SQL

This commit is contained in:
Gabor Körber 2023-10-27 13:11:20 +02:00
parent e200273f20
commit 26a1bee083

View File

@ -0,0 +1,27 @@
#[cfg(feature = "use_barrel")]
use barrel::{backend, functions, types, Migration, Table};
#[cfg(feature = "use_barrel")]
use sqlformat::{format, FormatOptions, QueryParams};
#[cfg(feature = "use_barrel")]
fn main() {
let mut m = Migration::new();
m.create_table("users", |t: &mut Table| {
t.add_column("id", types::primary());
t.add_column("username", types::varchar(150).unique(true));
t.add_column("first_name", types::varchar(150).nullable(true));
t.add_column("last_name", types::varchar(150).nullable(true));
t.add_column("email", types::varchar(255).nullable(true));
t.add_column("is_staff", types::boolean().default(false));
t.add_column("is_active", types::boolean().default(true));
t.add_column(
"date_joined",
types::datetime().default(functions::current_timestamp()),
);
});
let sql = m.make::<backend::Pg>();
let formatted_sql = format(&sql, &QueryParams::None, FormatOptions::default());
println!("{}", formatted_sql);
}