2016-05-20 6 views
0

ログインしたユーザーによって作成された作成者を選択して、インラインフォームセットファクトリを使用して作成者の新しいタイトルを作成する方法。Django:ログインしたユーザーのみを表示するインラインフォームのフィールド著者

Models.Py

Model1 
    user=models.ForeignKey(settings.AUTH_USER_MODEL) 
    Author = models.CharField(max_length=100) 

    Model2 
    Author_for_title=models.ForeignKey(Model1) 
    title=models.CharField(max_length=100) 

今私は、ユーザーが著者を選択し、更新するために、入力フィールドにタイトルを入力することができ、フォームを持っていると思います。

これまでのところすべて問題ありません。唯一のユーザーでログインしてによって作成されたように著者選択フィールドの表示著者 クエリセットを使用する方法

:しかし、私は解決することはできませんよ唯一のものは、ということでしょうか?

formset=inlineformset_factory(Model1,Model2,,can_delete=True,fields=('__all__',),extra=3) 

私はどこにも答えが見つからない、例を挙げて助けてください。

+0

こんにちは、明確にすること。 Model1の下に複数のModel2オブジェクトを追加できるフォームをお探しですか?あなたは正しいコードを持っているようです。あなたはどんな問題に直面していますか?あなたは精緻化できますか? – Amar

+0

@Amarは答えを得た:) –

答えて

0

ドキュメントのおかげで答えが得られました。

views.py

new_formset = inlineformset_factory(Model1,Model2,can_delete=False,exclude=('user',),extra=3) 
for forms in new_formset: 
     forms.fields['Author_for_title'].queryset = Model1.objects.filter(user=request.user) 
関連する問題