Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
✨ Add support for SQLAlchemy polymorphic models #1226
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
base: main
Are you sure you want to change the base?
✨ Add support for SQLAlchemy polymorphic models #1226
Changes from 12 commits
6d93a46
589237b
4071b0f
48f2a88
e6ad74d
277953a
4aade03
a3044bb
015601c
66c1d93
0efd1bf
7173b44
84d739e
dbd0101
88670a5
b1ed8c3
5d1bf5c
ccbb92a
d0d0288
525373d
ab965f0
68963e7
95c6a1e
c1dff79
File filter
Filter by extension
Conversations
Jump to
There are no files selected for viewing
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.
Would love to see a syntax that's more focused on what the user wants and hides implementation details.
Example:
You can then perform metaprogramming magic inside the
sqlmodel
decorator to compute exactly the same class definitions you have in the PR here.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.
Polymorphic orm has a lot of details, and these details are not concerned at dataclass level. So I think keep the origin sqlalchemy syntax is the best choice for early version. Maybe we can improve it at next PR.
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.
I think the key phrase in your comment is for early version. If
sqlalchemy
syntax was good enough,sqlmodel
wouldn't exist :)How other ORMs are doing it:
I think the key points are:
fquery.sqlmodel
already hasone_to_many()
. Perhaps it could be enhanced withone_to_many("hero_type")
But like you say - probably best done in two steps.