2011-08-24 38 views
0

我有一个selectfield,我重写了我的模型中的charfield。我在场上根本不能使用外键。Django自定义选择字段与初始

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) 

我该如何让自动选择的结果通过值?

回答

0

好吧,算了一下。

我需要在初始但instance.id而不是实例

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

我在做只是“结束”来传递:邮箱