Django错误:"未知栏' categorytree.id'在'字段列表'"

时间:2016-11-29 10:05:33

标签: django django-models

通过Django shell运行以下命令时:

from myApp.models import *
print Categorytree.objects.all()

我收到此错误消息:

  

操作错误:(1054,"未知列' categorytree.id' in'字段   列表'&#34)

这就是我的模型:

class Categorytree(models.Model):
    level = models.IntegerField(db_column='Level')  # Field name made lowercase.
    categorynode_idcategorynode = models.ForeignKey(Categorynode, models.DO_NOTHING, db_column='CategoryNode_idCategoryNode')  # Field name made lowercase.
    categorynode_idancestorcategorynode = models.ForeignKey(Categorynode, models.DO_NOTHING, db_column='CategoryNode_idAncestorCategoryNode', related_name='+')  # Field name made lowercase.

    class Meta:
        managed = False
        db_table = 'categorytree'
        unique_together = (('categorynode_idcategorynode', 'categorynode_idancestorcategorynode'),)

请注意,它没有主键,但它不应该有,但Django似乎认为会有一个主键.id字段。

1 个答案:

答案 0 :(得分:3)

引用Django docs

  

每个模型只需要一个字段就可以 primary_key = True (显式声明或自动添加)。

如果您需要访问没有主键的表格,则需要使用其他工具,例如SQLAlchemy