2016-12-16 13 views
1

私は多対多フィールドを持っています。管理者がM2Mウィジェットで表示する選択を制限したいと思います。Django管理者多くのフィールドから多くのフィールドの選択を制限する

私はこのようなモデルている:どのように私はavailable = Trueを持っている人にウィジェットに示したBオブジェクトを

class A(models.Model): 
    b_field = models.ManyToManyField(B) 

class B(models.Model): 
    available = models.BooleanField() 

を制限していますか?

答えて

3

limit_choices_toオプションは

は、このフィールドはのModelFormまたはadminを使用してレンダリングされ、この分野で利用可能な選択肢に制限を設定し、あなたを助けるかもしれません(デフォルトでは、クエリセット内のすべてのオブジェクトが利用可能です選択してください)。辞書、Qオブジェクト、または呼び出し可能な辞書またはQオブジェクトを返すことができます。例えばのために

class A(models.Model): 
    b_field = models.ManyToManyField(B, limit_choices_to={'available': True}) 
関連する問題