diff --git a/apps/framework-cli/src/framework/data_model/config.rs b/apps/framework-cli/src/framework/data_model/config.rs index b4ebe90ee..9c58dfa9f 100644 --- a/apps/framework-cli/src/framework/data_model/config.rs +++ b/apps/framework-cli/src/framework/data_model/config.rs @@ -40,6 +40,8 @@ pub struct StorageConfig { pub order_by_fields: Vec, #[serde(default)] pub deduplicate: bool, + #[serde(default)] + pub name: Option, } impl Default for StorageConfig { @@ -48,6 +50,7 @@ impl Default for StorageConfig { enabled: true, order_by_fields: vec![], deduplicate: false, + name: None, } } } diff --git a/apps/framework-cli/src/framework/data_model/model.rs b/apps/framework-cli/src/framework/data_model/model.rs index 15ea62c5c..203c1d44d 100644 --- a/apps/framework-cli/src/framework/data_model/model.rs +++ b/apps/framework-cli/src/framework/data_model/model.rs @@ -27,7 +27,12 @@ impl DataModel { // multiple sources. The Aim will be to have DB Blocks provision some tables as well. pub fn to_table(&self) -> Table { Table { - name: format!("{}_{}", self.name, self.version.as_suffix()), + name: self + .config + .storage + .name + .clone() + .unwrap_or_else(|| format!("{}_{}", self.name, self.version.as_suffix())), columns: self.columns.clone(), order_by: self.config.storage.order_by_fields.clone(), deduplicate: self.config.storage.deduplicate, diff --git a/packages/ts-moose-lib/src/index.ts b/packages/ts-moose-lib/src/index.ts index 86319507b..b34a2472b 100644 --- a/packages/ts-moose-lib/src/index.ts +++ b/packages/ts-moose-lib/src/index.ts @@ -26,6 +26,7 @@ export type DataModelConfig = Partial<{ enabled?: boolean; order_by_fields?: (keyof T)[]; deduplicate?: boolean; + name?: string; }; parallelism?: number; }>;