Commentオブジェクトのインスタンスを作成し、それを参照する際にエラー「*** AssertionError」が発生します。
私は、django-todoを利用して、TODOアプリを作成しています。
まず、Taskオブジェクトのインスタンスを作成します。
コードスニペット(models.py)
task_args = {
"title": "this is a title",
"due_date": <期限を表す値>
"note": "this is a memo"
"task_list": TaskList.objects.get(slug="Task1"),
}
created_task=Task.objects.create(**task_args)
次に、Commentオブジェクトのインスタンスを作成します。
comment_args = {
"task_id": created_task.id,
"body": "this is a body of comment"
}
created_comment=Comment.objects.create(**comment_args)
上記のコードをfor文で約8回、回しています。
上記コードは問題なく実行できているのですが、created_commentをデバッガ(pdb)で参照した際に、「*** AssertionError」が発生してしまいます。
エラー
(Pdb) created_task
<Task: Title task testa-2019-09-30>
(Pdb) created_comment
*** AssertionError
(Pdb) created_comment.__dict__
{'_state': <django.db.models.base.ModelState object at 0x1115eeb50>, 'id': 3, 'author_id': None, 'task_id': 3, 'date': datetime.datetime(2019, 8, 21, 0, 9, 5, 218050), 'email_from': None, 'email_message_id': None, 'body': 'this is a body of comment'}
何か解決できるアイデアや考えられる原因はないでしょうか?
試したこと
sqliteのデータベースファイルを削除して、もう一度やり直しました。
モデルのnull制約を確認して、null=True出ないものには値を入れるようにしました。
よろしくお願いします。