Skip to content

Conversation

@wu-clan
Copy link
Member

@wu-clan wu-clan commented Nov 6, 2025

Close #825

@wu-clan
Copy link
Member Author

wu-clan commented Nov 6, 2025

TODO:

  • 删除所有模型关系和外键
  • 重构用户部分
  • 重构部门部分
  • 重构角色部分
  • 重构菜单部分
  • 重构数据权限部分
  • 重构代码生成部分
  • 重构字典部分
  • 重构社交用户部分
  • 重构用户信息缓存清理

@downdawn downdawn self-requested a review November 10, 2025 03:48
@downdawn
Copy link
Collaborator

image image

model这样设计,crud可正常使用selectinload

可以验证一下这个可行性,可能会更加优雅

@wu-clan
Copy link
Member Author

wu-clan commented Nov 10, 2025

此 PR 是为了删除任何表之间的物理外键约束(fk、cascade)

定义 primaryjoin 确实不会创建物理外键约束, 仅为 join on 条件,但是,通常不建议这么做,任何 sql 条件都应尽可能地在代码中实现,这有助于规避潜在问题

事实上,仅使用 relationship 而不使用 fk 也可以正常工作,只是需要手动处理级联操作(cascade)

综上所述,仅使用 relationship 似乎也能达到此 PR 目标,但是,对于明确规定禁止使用 relationship 的要求,这仍然无法满足

我的最终目标是,在此 PR 被合并之前,完成 PR 中列出的所有任务,然后将主分支进行最后发版并创建备份分支

@wu-clan
Copy link
Member Author

wu-clan commented Nov 10, 2025

就像我在其他地方回复的一样,相比于以下实现,我已为目前的封装实现做了很大努力

941d69d7cedd3dd65dd906183dc590e2

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

逻辑外键

3 participants