我是Django的初学者,目前我正在Django中开发代码,但无法弄清两者之间的区别。
class MyForm(forms.Form):
myfield = forms.ChoiceField(choices=[(u.id, u.username) for u in User.objects.filter(type="TYPE1")])
和
class MyForm(forms.Form):
pass
def __init__(self, *args, **kwargs):
super(MyForm, self).__init__(*args, **kwargs)
self.fields['myfield'] = forms.ChoiceField(choices=[(u.id, u.username) for u in User.objects.filter(type="TYPE1")])
尽管这两个代码的目的是相同的,但是由于幕后情况,我无法发现两者之间的差异。