问题描述
在我的本地主机中,我遇到了Django OperationalError,在所有stackoverflow问题中,每个人都在谈论python manage.py makemigrations <appname>
和python manage.py migrate
,但是我进行了5次迁移,但仍然遇到相同的错误。这是我的模型,视图,模板和url文件代码。我也尝试从TextField中删除null=True
和blank=True
参数
模板
<!DOCTYPE html>
{% load static %}
<html lang="en">
<head>
<Meta charset="UTF-8">
<Meta name="viewport" content="width=device-width,initial-scale=1.0">
<link rel="stylesheet" href="{% static 'f/ask/ask.css' %}">
<title>BareTalk</title>
</head>
<body>
<div id="wrapper">
<form method="POST">
{% csrf_token %}
{{ form }}
<!-- Todo: input submit Reg() function javascript -->
<input name="final" id="final" type="submit" value="Ask">
</form>
</div>
</body>
<script src="{% static 'f/ask/ask.js' %}"></script>
</html>
views.py
(基于功能的视图)
def Answer(request,pk):
form = AnswerForm()
if request.method == 'POST':
form = AnswerForm(request.POST)
if form.is_valid():
form.save()
return HttpResponseRedirect(reverse('f'))
content = {'form': form}
return render(request,'f/answer.html/',content)
models.py
class Answer(models.Model):
author = models.ForeignKey(User,on_delete=models.CASCADE)
question = models.ForeignKey(Question,on_delete=models.CASCADE)
content = models.TextField('Body',null=True,blank=True,default='Answer')
date = models.DateTimeField(default=timezone.Now)
def __str__(self):
return self.content
class Meta:
verbose_name_plural = 'Answers'
verbose_name = 'Answer'
urls.py
urlpatterns = [
# path('',QuestionListView.as_view(),name='f'),path('',index,path('<hex:pk>/update/',QuestionUpdateView.as_view(),name='question-update'),path('<hex:pk>/delete/',QuestionDeleteView.as_view(),name='question-delete'),path('new/',QuestionCreateView.as_view(),name='question-create'),path('<hex:pk>/',QuestionDetailView.as_view(),name='current'),path('<hex:pk>/answer',Answer,name='answer')
]
和Django追踪表cmd(terminal)
File "C:\Users\user\AppData\Local\Programs\Python\python38-32\lib\site-packages\django\db\backends\sqlite3\base.py",line 413,in execute
return Database.Cursor.execute(self,query,params)
django.db.utils.OperationalError: table f_answer has no column named author_id
[03/Sep/2020 10:53:29] "POST /f/1/answer HTTP/1.1" 500 141941
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)