前提・実現したいこと
django3.0でORMマッパーを使って抽出しています。
搭載のORMを使ってグループ毎の集計をしたいのですが、エラーが発生しました。
発生している問題・エラーメッセージ
FieldError Cannot resolve keyword 'frame' into field. Choices are: ~~~~~~~~~
該当のソースコード
python
1class CustomUser(AbstractUser): 2 "拡張ユーザーモデル" 3 class Meta(AbstractUser.Meta): 4 db_table = 'custom_user' 5 6 7class Lecture(models.Model): 8 id = models.AutoField(primary_key=True) 9 teacher = models.ForeignKey(get_user_model(), on_delete=models.CASCADE) 10 11 12class Frame(models.Model): 13 id = models.AutoField(primary_key=True) 14 lecture = models.ForeignKey(Lecture, on_delete=models.CASCADE, related_name="lecture") 15
一部抜粋しています。
CustomUser: lectureの親
Lecture: userの子、frameの親
Frame: lectureの子
それぞれのlectureごとのframesレコードの数を抽出したいです。
試したこと
https://codor.co.jp/django/how-to-use-annotate
↓失敗
annotate_lectures = Lecture.objects.annotate(Count('frame'))
上記のようにやると、エラーが出ますが、同様にuserの子のlecture数だと抽出できていますが、何が違うのでしょうか?どのようにすればlecturesの子のframe数を抽出できるのでしょうか?
↓成功
annnotate_users = CustomUser.objects.annotate(cnt=Count('lecture'))
補足情報(FW/ツールのバージョンなど)
django3.0
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。