Django 外键字段上的零值
我正在研究设计非常糟糕的遗留数据库。在某些表上,外键不仅可以为空(这是可以的),也可以为 0。
我将这些表之一映射到一个模型,当表中为 Null 时,它返回所需的 None 值,但当该值为 0 时引发异常。
有没有办法让它在包含值 0 的外键上返回 None 。
I'm working on very badly designed legacy database. On some of the tables not only can the foreign keys be null (which is OK) they can be 0 too.
I mapped one of these tables to a Model it returns the desired None value when it is Null in the table but raises an exception when the value is 0.
Is there a way to make it return None on foreign keys containing the value 0.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您必须创建自己的类似
ForeignKey
的字段,该字段不会因0
而阻塞。请注意,任何非NULL
值都可能有效,因此您的数据在这里是错误的,您应该考虑修复它。You'd have to create your own
ForeignKey
-like field that would not choke on a0
. Note that any non-NULL
value could be valid, so your data is in the wrong here, and you should consider repairing it.面临同样的问题,所以最终编写
ForeignKey
子类:Faced the same problem, so end up with writing
ForeignKey
subclass: