2015-02-07 70 views
0

我试图从一个中间表创建一个中间表模型,用于使用Django 1.7和Python3.2管理多个表。modelformset_factory:字段列表中的未知列'<model> .id'

这是我的中介模型,并注意'managed'设置为'False'。

# models.py 
class Intermediary(models.Model): 
    sid = models.ForeignKey(Sellers, db_column='sid') 
    cid = models.ForeignKey(Competitors, db_column='cid') 
    date_joined = models.DateField(auto_now=True) 

class Meta: 
    managed = False 
    db_table = 'intermediary' 

Python的外壳:

>>> from django.forms.models import modelformset_factory 
>>> from myapp.models import Intermediary 
>>> IntermediaryFormSet = modelformset_factory(Intermediary) 
>>> formset = IntermediaryFormSet() 
>>> print(formset) 
>>> Traceback (most recent call last): 
    blablity-blah-blah 
    blablity-blah-blah 
    ... 
    django.db.utils.ProgrammingError: Unknown column 'intermediary.id' in 'field list'. 

但正如你可以看到有一个在我的模型中没有 '身份证' 列。我认为这个幽灵专栏是由Django的魔术创建的一个隐含的专栏。

我也被另一列得到同样的错误过滤:

IntermediaryFormSet = modelformset_factory(Intermediary, fields=('sid',)) 

我缺少的东西?

回答

相关问题