为了支持旧(遗留)数据库,我们必须创建一个表,使用整数字段作为外键到用户表:这是我们的模型如何:
class UserHistory():
user_id = models.IntegerField(null=True, blank=True)
# ..... (other fields) .....
问题是用户表中可能存在也可能不存在用户ID。有没有办法将user_id字段视为用户talbe的外键(如果存在)?因此,我可以在django admin或其他地方播放,而不仅仅是ID。
答案 0 :(得分:1)
您可以将ForeignKey
字段与db_constraint=False
一起使用。有关警告,请参阅docs,但遗留无效数据是合理的情况之一。
答案 1 :(得分:0)
向数据库添加第二列,并使用SQL将另一个表中没有相应对象的字段清空。然后在这个新领域定义你的django模型。