djangoで質問投稿のアプリを作成しています。
投稿のフィールドはタイトル、テキスト、日付、カテゴリです。
投稿しようとすると
OperationalError at /admin/qs_posts/post/add/
table qs_posts_post has no column named category_id
と表示されます。
原因の一つだと思われる場所はmodel.py
python
1class Post(models.Model): 2 """質問の投稿""" 3 4 title = models.CharField('タイトル', max_length=255) 5 text = models.TextField('本文') 6 created_at = models.DateTimeField('作成日', default=timezone.now) 7 category = models.ForeignKey(Category, verbose_name='カテゴリ', on_delete=models.PROTECT ) 8 9 def __str__(self): 10 return self.title
この部分です。コード自体はあっていると思うですが、
categoryの部分をあとから追加したのですが、migrateした際に、
2択で、1.「1回限りのデフォルトを行いますか?」
2.「デフォルトの値を設定しますか?」(のような英文だったと思います。)
ここで2を選択して
category = models.ForeignKey(Category, verbose_name='カテゴリ', on_delete=models.PROTECT default="新着")
として、migrateしてしまいました。
修正して、その後、migrateをしても、
ValueError: invalid literal for int() with base 10: '新着'
とエラーがでてしまいます。これが原因ではないかと思います。
どのように解決できるでしょうか?よろしくおねがいいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。