Django自定义selectfield与初始

时间:2011-08-24 01:22:25

标签: django

我有一个selectfield,我在模型中覆盖了一个charfield。我不能在场上使用外键。

class AliasForm(forms.ModelForm):
    account = forms.ModelChoiceField(queryset=Account.objects.all(), widget=forms.HiddenInput())
    domain = forms.ModelChoiceField(queryset=Domain.objects.all(), widget=forms.HiddenInput())
    end = forms.ModelChoiceField(queryset=Mailbox.objects.all())

    def __init__(self, *args, **kwargs):
        self.account = kwargs.pop('account', None)
        super(AliasForm, self).__init__(*args, **kwargs)
        if self.account:
            self.fields['end'].queryset = Mailbox.objects.filter(account=self.account)

如何在自动选择的值中传递结束?

1 个答案:

答案 0 :(得分:0)

好的想通了。

我需要传递初始但是使用instance.id而不是实例

form = AliasForm(initial={'end': mailbox.id})

我只是'结束':邮箱