代码之家  ›  专栏  ›  技术社区  ›  orokusaki

Django-通过request.user.somechoice\u集.all()

  •  0
  • orokusaki  · 技术社区  · 14 年前

    class SpamForm(ModelForm):
        some_choices = fields.MultipleChoiceField()
    
        def __init__(self, *args, **kwargs):
            super(SpamForm, self).__init__(*args, **kwargs)
            self.fields['some_choices'].choices = [[choice.pk, choice.description] for choice in self.instance.user.somechoice_set.all()]
    
        class Meta:
            model = Spam
    

    request.user (在传递到表单中的实例上设置)。有更好的办法吗?

    1 回复  |  直到 14 年前
        1
  •  0
  •   Ignacio Vazquez-Abrams    14 年前

    使用 ModelMultipleChoiceField 在形式和设置它的 queryset __init__() .