Skip to content

Commit c5c4747

Browse files
committed
codegen: prelude for frontend models
1 parent b208767 commit c5c4747

File tree

3 files changed

+27
-13
lines changed

3 files changed

+27
-13
lines changed

sea-orm-codegen/src/entity/writer.rs

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -208,7 +208,7 @@ impl EntityWriter {
208208
let with_prelude = context.with_prelude != WithPrelude::None;
209209
files.push(self.write_index_file(context.lib, with_prelude, context.seaography));
210210
if with_prelude {
211-
files.push(self.write_prelude(context.with_prelude));
211+
files.push(self.write_prelude(context.with_prelude, context.frontend_format));
212212
}
213213
if !self.enums.is_empty() {
214214
files.push(self.write_sea_orm_active_enums(
@@ -337,13 +337,19 @@ impl EntityWriter {
337337
}
338338
}
339339

340-
pub fn write_prelude(&self, with_prelude: WithPrelude) -> OutputFile {
340+
pub fn write_prelude(&self, with_prelude: WithPrelude, frontend_format: bool) -> OutputFile {
341341
let mut lines = Vec::new();
342342
Self::write_doc_comment(&mut lines);
343343
if with_prelude == WithPrelude::AllAllowUnusedImports {
344344
Self::write_allow_unused_imports(&mut lines)
345345
}
346-
let code_blocks = self.entities.iter().map(Self::gen_prelude_use).collect();
346+
let code_blocks = self.entities.iter().map({
347+
if frontend_format {
348+
Self::gen_prelude_use
349+
} else {
350+
Self::gen_prelude_use_model
351+
}
352+
}).collect();
347353
Self::write(&mut lines, code_blocks);
348354
OutputFile {
349355
name: "prelude.rs".to_owned(),
@@ -860,6 +866,14 @@ impl EntityWriter {
860866
}
861867
}
862868

869+
pub fn gen_prelude_use_model(entity: &Entity) -> TokenStream {
870+
let table_name_snake_case_ident = entity.get_table_name_snake_case_ident();
871+
let table_name_camel_case_ident = entity.get_table_name_camel_case_ident();
872+
quote! {
873+
pub use super::#table_name_snake_case_ident::Model as #table_name_camel_case_ident;
874+
}
875+
}
876+
863877
#[allow(clippy::too_many_arguments)]
864878
pub fn gen_compact_model_struct(
865879
entity: &Entity,
Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
//! SeaORM Entity. Generated by sea-orm-codegen 0.1.0
22
3-
pub use super::cake::Model as CakeModel;
4-
pub use super::cake_filling::Model as CakeFillingModel;
5-
pub use super::filling::Model as FillingModel;
6-
pub use super::fruit::Model as FruitModel;
7-
pub use super::vendor::Model as VendorModel;
3+
pub use super::cake::Model as Cake;
4+
pub use super::cake_filling::Model as CakeFilling;
5+
pub use super::filling::Model as Filling;
6+
pub use super::fruit::Model as Fruit;
7+
pub use super::vendor::Model as Vendor;
Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
//! SeaORM Entity. Generated by sea-orm-codegen 0.1.0
22
3-
pub use super::cake::Model as CakeModel;
4-
pub use super::cake_filling::Model as CakeFillingModel;
5-
pub use super::filling::Model as FillingModel;
6-
pub use super::fruit::Model as FruitModel;
7-
pub use super::vendor::Model as VendorModel;
3+
pub use super::cake::Model as Cake;
4+
pub use super::cake_filling::Model as CakeFilling;
5+
pub use super::filling::Model as Filling;
6+
pub use super::fruit::Model as Fruit;
7+
pub use super::vendor::Model as Vendor;

0 commit comments

Comments
 (0)