【发布时间】:2020-08-10 11:54:54
【问题描述】:
我有一个数据库表,其中两个外键指向两个不同的表。业务逻辑需要“非此即彼”的关系;在任何给定时间,只有一个外键不能为空。
根据业务逻辑,以下是外键可以保持的四种可能状态:
- NULL,NULL - 好的
- 数字,NULL - 好的
- NULL,数字 - 好的
- 数字,数字 - 无效的业务逻辑
我正在使用 Django,并且我知道我可以编写一些 onSave() 检查来处理这个问题,但这感觉很老套。
有没有更好的方法来处理这个业务逻辑?
【问题讨论】:
标签: sql django database postgresql