我想弄清楚保存我使用django orm的模型的最佳方法。我有一个模型/表,User
。另外,我有一个名为ContactInfo
的模型/表,我们在这里存储一个外键给用户表。用外键保存django orm模型
我知道普通的django orm的做法是将ContactInfo模型的外键放到用户模型中,但是在这一点上,我们不想添加任何东西到已经是单块的用户表中,所以我们把将外键插入到ContactInfo模型中。
我知道我可以将用户模型存储在ContactInfo模型中,调用保存在ContactInfo中,并且它应该保存用户模型,但是如果我与用户及其联系人信息存在一对多关系,该怎么办?我宁愿在联系人信息模型/对象的(1多个)实例中没有多个用户表实例。
如果我能清除任何东西,请让我知道。在当前时刻,我有最好的办法是到的ContactInfo列表的一个实例存储为user.contact_info
,并覆盖保存用户user.save()
方法来检查contact_info,而且如果它存在插入user.id
到每个模型和保存。不幸的是,我觉得这有点麻烦,但是对于Django和Python来说,我不确定我的选择。
任何帮助将不胜感激,谢谢!
Django不提供多对多类型吗?它会为你创建“中间”表。 – imm 2012-08-07 05:00:39