0
私はDjangoインラインフォームセットのハンドルを取得しようとしています。何が私をトリップしているのは、クエリーセットをformsetコンストラクタに渡そうとしていることです。Djangoインラインフォームセットのインスタンスとクエリセット
2つのシンプルなモデルを考えてみましょう。
class PickSheet(Model):
name = Models.CharField()
class Pick(Model):
picksheet = Models.ForeignKey(PickSheet, related_name='picks')
team = Models.CharField()
points = Models.CharField()
ここでFormSetを作成します。
PickFormSet = inlineformset_factory(PickSheet, Pick, max_num=5, extra=0, fields=['team', 'points'])
データベースには、ピックシートが2つ作成されています。
私はformsetを作成するときにinstance =を使用すると、期待される2つのフォームが得られます。
私がqueryset =を使用してformsetを作成すると、私はゼロフォームを取得します。
qs = PickSheet.objects.filter(id=3)
formset = PickFormSet(queryset=qs)
print(formset.management_form)
何が起こっているのですか? PickSheet.objects.filter(id = 3)はPickSheet.objects.get(id = 3)と同じですか? PickSheet.objects.filter(id=3)
リストとを返すあるので