Compare commits
No commits in common. "e4a1006412c32cbb4e082b35427ba450e0c42662" and "21c1f2e069e467fa456ef168554b3307ac8ac6a9" have entirely different histories.
e4a1006412
...
21c1f2e069
2 changed files with 0 additions and 32 deletions
|
|
@ -16,7 +16,6 @@ impl Field {
|
||||||
"i64" => Some("INTEGER".into()),
|
"i64" => Some("INTEGER".into()),
|
||||||
"f64" => Some("REAL".into()),
|
"f64" => Some("REAL".into()),
|
||||||
"f32" => Some("REAL".into()),
|
"f32" => Some("REAL".into()),
|
||||||
"bool" => Some("TINYINT".into()),
|
|
||||||
"String" => Some("TEXT".into()),
|
"String" => Some("TEXT".into()),
|
||||||
"DateTime" => Some("DATETIME".into()),
|
"DateTime" => Some("DATETIME".into()),
|
||||||
"Json" => Some("TEXT".into()),
|
"Json" => Some("TEXT".into()),
|
||||||
|
|
|
||||||
|
|
@ -165,34 +165,6 @@ fn gen_update_by_id_method(model: &Model) -> TokenStream {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fn gen_delete_by_id_method(model: &Model) -> TokenStream {
|
|
||||||
let resource_ident = format_ident!("{}", &model.name);
|
|
||||||
let error_msg = format!("Failed to delete resource {:?}", model.name.clone());
|
|
||||||
let primary_key = &model.fields.iter()
|
|
||||||
.find(|f| f.is_primary)
|
|
||||||
.expect("A model must have at least one primary key")
|
|
||||||
.name;
|
|
||||||
|
|
||||||
let func_name_ident = format_ident!("delete_by_{}", primary_key);
|
|
||||||
let query = format!(
|
|
||||||
"DELETE FROM {} WHERE {} = $1",
|
|
||||||
model.table_name,
|
|
||||||
primary_key
|
|
||||||
);
|
|
||||||
|
|
||||||
quote! {
|
|
||||||
pub async fn #func_name_ident(&self, item_id: &str) -> Result<()> {
|
|
||||||
sqlx::query(#query)
|
|
||||||
.bind(item_id)
|
|
||||||
.execute(&self.db.0)
|
|
||||||
.await
|
|
||||||
.context(#error_msg)?;
|
|
||||||
|
|
||||||
Ok(())
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
fn generate_repository_file(model: &Model) -> Result<SourceNodeContainer> {
|
fn generate_repository_file(model: &Model) -> Result<SourceNodeContainer> {
|
||||||
let resource_name = model.name.clone();
|
let resource_name = model.name.clone();
|
||||||
|
|
@ -207,7 +179,6 @@ fn generate_repository_file(model: &Model) -> Result<SourceNodeContainer> {
|
||||||
let insert_method_code = gen_insert_method(&model);
|
let insert_method_code = gen_insert_method(&model);
|
||||||
let insert_many_method_code = gen_insert_many_method(&model);
|
let insert_many_method_code = gen_insert_many_method(&model);
|
||||||
let update_by_id_method_code = gen_update_by_id_method(&model);
|
let update_by_id_method_code = gen_update_by_id_method(&model);
|
||||||
let delete_by_id_method_code = gen_delete_by_id_method(&model);
|
|
||||||
|
|
||||||
// TODO: add import line
|
// TODO: add import line
|
||||||
|
|
||||||
|
|
@ -236,8 +207,6 @@ fn generate_repository_file(model: &Model) -> Result<SourceNodeContainer> {
|
||||||
#insert_many_method_code
|
#insert_many_method_code
|
||||||
|
|
||||||
#update_by_id_method_code
|
#update_by_id_method_code
|
||||||
|
|
||||||
#delete_by_id_method_code
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
// convert TokenStream into rust code as string
|
// convert TokenStream into rust code as string
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue