我有以下模型:
class Task(models.Model)
customer = models.ForeignKey('Customer')
external_job = models.CharField(max_length=64)
created = models.DateTimeField(auto_now_add=True, db_index=True)
start = models.DateTimeField(db_index=True)
status = models.IntegerField()
我添加了一列hidden_from_customer:
hidden_from_customer = models.BooleanField(default=True)
并运行syncdb。该列现在反映在数据库中,默认值为True。但是当我运行以下查询时:
tasks = Task.objects.filter(status=1, hidden_from_customer=True)
我得到例外说法:
Cannot resolve keyword "hidden_from_customer" into field. Choices are customer, external_job, created, start, status.
我不知道这有什么不对!
答案 0 :(得分:0)
我有解决方案。在数据库中,我看到有一个额外的列'end'未在Model中定义。这就是为什么我认为Django没有关注新专栏。我在模型中添加了“结束”,现在一切都运行良好。
奇怪的是,在我添加这个新专栏之前,一切都运转良好。