1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
use crate::postgres::def::TableDef; use sea_query::{Alias, Iden, Table, TableStatement}; impl TableDef { pub fn write(&self) -> TableStatement { let mut table = Table::create(); table.table(Alias::new(self.info.name.as_ref())); for col in self.columns.iter() { table.col(col.write()); } for primary_key in self.primary_key_constraints.iter() { table.primary_key(primary_key.write()); } for unique in self.unique_constraints.iter() { table.index(unique.write()); } for reference in self.reference_constraints.iter() { table.foreign_key(reference.write()); } TableStatement::Create(table) } }