-
-
Notifications
You must be signed in to change notification settings - Fork 521
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
sea-orm-cli Implement derives & attributes parameters for entity generation #1124
sea-orm-cli Implement derives & attributes parameters for entity generation #1124
Conversation
Should this also add derives to active enums, realizing that they might need the traits derived too? EDIT: I see this was changed in 0.10.0 and is no longer necessary. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hey @tsar-boomba, thanks for contributing!!
I have some suggested code changes: tsar-boomba#1
Please check and see if it make sense to you :)
I didn't catch it. Why adding custom derives to active enums is no longer necessary in 0.10.0? |
It seems that after 0.10, by default it produces this #[sea_orm(column_type = "Custom(\"note_type\".to_owned())", nullable)]
pub r#type: Option<String>, for a column with an enum type (Postgres). Before it would make a separate file called active_enum I believe. |
One other thing, the fully qualified name is being mangled when parsed into Before parsing to After parsing to Any idea what is going on with this? The derives work as expected, so maybe this doesn't matter since they're generated files anyways. |
Oh, please install sea-orm-cli 0.10.1, this has been fixed on latest version. |
Alright, I've updated and see the enum is there. So should |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hey @tsar-boomba, sorry for the delay. I'd like to refactor it a bit. I'll merge it into a local branch before it was committed into master. Thanks again for the contributions!!
…y generation (#1321) * sea-orm-cli Implement derives & attributes parameters for entity generation (#1124) * implement derives & attributes for cli * fmt and clippy fix * use comma delimiter for attributes arg * Update help message use `'` instead of `"` to quote * Refactoring * remove unnecessary cloning Co-authored-by: Billy Chan <[email protected]> * [CLI] generate model with extra derives and attributes * clippy Co-authored-by: Isaiah Gamble <[email protected]>
* Update 02-writing-migration.md * Update SeaORM/docs/03-migration/02-writing-migration.md * Support various UUID formats that are available in `uuid::fmt` module (SeaQL/sea-orm#1325) * Casting columns as a different data type on select, insert and update (SeaQL/sea-orm#1304) * Methods of `ActiveModelBehavior` receive db connection as a parameter (SeaQL/sea-orm#1145, SeaQL/sea-orm#1328) * Added `execute_unprepared` method to `DatabaseConnection` and `DatabaseTransaction` (SeaQL/sea-orm#1327) * Added `Select::into_tuple` to select rows as tuples (instead of defining a custom Model) (SeaQL/sea-orm#1311) * Generate `#[serde(skip)]` for hidden columns (SeaQL/sea-orm#1171, SeaQL/sea-orm#1320) * Generate entity with extra derives and attributes for model struct (SeaQL/sea-orm#1124, SeaQL/sea-orm#1321) * Generate entity with extra derives and attributes for model struct (SeaQL/sea-orm#1124, SeaQL/sea-orm#1321) * async_trait * Migrations are now performed inside a transaction for Postgres (SeaQL/sea-orm#1379) * `MockDatabase::append_exec_results()`, `MockDatabase::append_query_results()`, `MockDatabase::append_exec_errors()` and `MockDatabase::append_query_errors()` take any types implemented `IntoIterator` trait (SeaQL/sea-orm#1367) * Cleanup the use of `vec!` macros * Added `DatabaseConnection::close` (SeaQL/sea-orm#1236) * Added `ActiveValue::reset` to convert `Unchanged` into `Set` (SeaQL/sea-orm#1177) * Added `QueryTrait::apply_if` to optionally apply a filter (SeaQL/sea-orm#1415) * Added the `sea-orm-internal` feature flag to expose some SQLx types (SeaQL/sea-orm#1297, SeaQL/sea-orm#1434) * Add `QuerySelect::columns` method - select multiple columns (SeaQL/sea-orm#1264) * Edit * Update SeaORM/docs/02-install-and-config/02-connection.md Co-authored-by: Chris Tsang <[email protected]> * Update SeaORM/docs/05-basic-crud/03-insert.md Co-authored-by: Chris Tsang <[email protected]> * fmt * Edit --------- Co-authored-by: Chris Tsang <[email protected]>
PR Info
Adds
Ability to add bonus derive macros and attributes to generated models.
Changes
Reusable testing utilities for codegen crate & tests for the new features added.