#python #django #django-migrations
#python #django #django-миграции
Вопрос:
На моем локальном хостинге я получаю Django OperationalError и во всех вопросах stackoverflow, о которых все говорят python manage.py makemigrations <appname>
и python manage.py migrate
, но я выполнял миграции 5 раз, и я получаю все ту же ошибку. Вот мои модели, представления, шаблоны и URL-коды файлов. Также я попытался удалить 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, name='f'),
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 (терминал)
File "C:UsersuserAppDataLocalProgramsPythonPython38-32libsite-packagesdjangodbbackendssqlite3base.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
Комментарии:
1. Вы очистили все миграции?
2. Нет, не так