Python Django管理员删除类问题时出错
我有一个课堂问题,我向Django管理员注册了。当我想删除其中一些时,我在/admin/f/question/10/delete处得到一个错误“OperationalError”/ 没有这样的栏目:f_answer.date”。 这是我的models.py文件内容Python Django管理员删除类问题时出错,python,django,django-admin,Python,Django,Django Admin,我有一个课堂问题,我向Django管理员注册了。当我想删除其中一些时,我在/admin/f/question/10/delete处得到一个错误“OperationalError”/ 没有这样的栏目:f_answer.date”。 这是我的models.py文件内容 from django.db import models # ---------- Question ---------- class Question(models.Model): ''' Questions '''
from django.db import models
# ---------- Question ----------
class Question(models.Model):
''' Questions '''
author = models.CharField('Author', max_length=45)
title = models.CharField('Title', max_length=300)
body = models.TextField('Body')
date = models.DateTimeField(auto_now_add=True, db_index=True, null=True, blank=True)
def __str__(self):
return self.title
class Meta:
verbose_name_plural = 'Questions'
verbose_name = 'Question'
您显示的有关类
问题的代码在当前状态下没有任何问题。您是否碰巧跨多个迁移创建了问题对象?如果您最初有一个字段,已迁移,然后将其删除——这可能会在尝试进行事务时引起问题
我对您的日期字段有点怀疑,因为它既是db_index=true
又允许null
。它说的是f_答案。日期
缺失。。。我们是否应该将其解释为您有一个与问题
对象相关的类答案
?如果您在_delete=models.CASCADE上设置了与的关系,但Question的实例具有null
值,那么Django可能试图查找不存在的相关Answer
对象。这是数据库迁移出现问题时的标准操作,是执行python manage.py migrate--run syncdb
还是删除manage.py migrate--run syncdb命令对我没有帮助:(我认为您在迁移后添加了date
字段,并将一些数据放入数据库,这就是为什么它会给您带来错误,您必须删除此数据库或同步数据库,但我如何删除它?我删除了db_indexa和null参数,但它仍然不起作用。您可以用类答案的代码更新您的问题吗?什么类答案?那么您没有答案
类?为什么错误消息会说明f\u答案
?您是否在管理视图中创建变量f\u答案
?是的,我有类答案,但我没有告诉您