нет такой таблицы: main.core_answer__old - PullRequest
0 голосов
/ 29 января 2020

Я пытался создать новый комментарий на основе этих моделей:

class Answer(models.Model):
answer = models.TextField()
author = models.ForeignKey(CustomUser, on_delete = models.CASCADE,
                           related_name="written_answers")
question = models.ForeignKey(Question, on_delete = models.CASCADE, related_name="answers")
upvoters = models.ManyToManyField(CustomUser, related_name="upvoted_answers")
created_at = models.DateTimeField(auto_now_add = True, blank = True)
updated_at = models.DateTimeField(blank = True, null=True)

def __str__(self):
    return str(self.id)
class Comment(models.Model):
    comment = models.CharField(max_length = 200)
    author = models.ForeignKey(CustomUser, on_delete = models.CASCADE,
                               related_name = "written_comments")
    answer = models.ForeignKey(Answer, on_delete = models.CASCADE, related_name="comments")
    upvoters = models.ManyToManyField(CustomUser, related_name="upvoted_comments")
    parent_comment = models.ForeignKey("self", on_delete = models.CASCADE,
                                          related_name="next_in_thread", null=True, blank=False)
    created_at = models.DateTimeField(auto_now_add = True, blank = True)
    updated_at = models.DateTimeField(null=True, blank = True)

    class Meta:
        ordering = ('created_at', )

Но я получаю следующую ошибку: нет такой таблицы: main.core_answer__old Что я сделал не так? Я попытался удалить таблицу SQLite и миграции и начать заново, но эта ошибка все еще сохраняется. Пожалуйста, помогите.

Редактировать: Я использую заполненный скрипт после миграции, который создает Вопросы и Ответы, если это имеет значение.

core / models.py

from django.db import models
from users.models import CustomUser

class Genre(models.Model):
    name = models.CharField(max_length=84)
    subscribers = models.ManyToManyField(CustomUser, related_name="subscribed_genres")

    def __str__(self):
        return self.name

class Topic(models.Model):
    name = models.CharField(max_length=84)
    followers = models.ManyToManyField(CustomUser, related_name="followed_topics")

    def __str__(self):
        return "#" + self.name

class Question(models.Model):
    question = models.CharField(max_length = 128, blank = False)
    asker = models.ForeignKey(CustomUser, on_delete = models.CASCADE, 
                              related_name="asked_questions")
    requested = models.ManyToManyField(CustomUser, related_name="answer_requests")
    genres = models.ManyToManyField(Genre, related_name = "questions")
    followers = models.ManyToManyField(CustomUser, related_name="followed_questions")
    topics = models.ManyToManyField(Topic, related_name="questions")
    url = models.CharField(max_length = 150, unique=True)
    created_at = models.DateTimeField(auto_now_add = True, blank = True)
    updated_at = models.DateTimeField(null=True, blank = True)

    class Meta:
        ordering = ('-created_at', )

    def __str__(self):
        return self.question

class Answer(models.Model):
    answer = models.TextField()
    author = models.ForeignKey(CustomUser, on_delete = models.CASCADE,
                               related_name="written_answers")
    question = models.ForeignKey(Question, on_delete = models.CASCADE, related_name="answers")
    upvoters = models.ManyToManyField(CustomUser, related_name="upvoted_answers")
    created_at = models.DateTimeField(auto_now_add = True, blank = True)
    updated_at = models.DateTimeField(blank = True, null=True)

    def __str__(self):
        return str(self.id)

class Comment(models.Model):
    comment = models.CharField(max_length = 200)
    author = models.ForeignKey(CustomUser, on_delete = models.CASCADE,
                               related_name = "written_comments")
    answer = models.ForeignKey(Answer, on_delete = models.CASCADE, related_name="replied_comments")
    upvoters = models.ManyToManyField(CustomUser, related_name="upvoted_comments")
    parent_comment = models.ForeignKey("self", on_delete = models.CASCADE,
                                          related_name="next_in_thread", null=True, blank=False)
    created_at = models.DateTimeField(auto_now_add = True, blank = True)
    updated_at = models.DateTimeField(null=True, blank = True)

    class Meta:
        ordering = ('created_at', )

[РЕШЕНО]: повышен рейтинг с Django == 2,1 до Django == 2,2

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...