当只选择了2或3列时,我不知道如何格式化ModelChoiceField的输出。
这是我的模型:
class ActsIdsModel(models.Model):
releveAnnee = models.IntegerField(max_length=4, blank=False, null=False)
releveMois=models.IntegerField(max_length=2, blank=False, null=False)
noOrdre=models.IntegerField(max_length=2, blank=False, null=False)
...
...
def __unicode__(self):
releveAnnee=vn.variablesNameDic['releveAnnee'] + "=" + str(self.releveAnnee)
releveMois=vn.variablesNameDic['releveMois'] + "=" + str(self.releveMois)
noOrdre=vn.variablesNameDic['noOrdre'] + "=" + str(self.noOrdre)
return releveAnnee + ", " + releveMois + ", " + noOrdre
下面的代码有效,但我得到了所有的列
(所以对我来说效率不高):
class ActsAddForm(forms.Form):
actsToValidate=forms.ModelChoiceField(queryset=ActsIdsModel.objects.filter(validated=0))
但是
下面的代码不起作用
:
class ActsAddForm(forms.Form):
actsToValidate=forms.ModelChoiceField(queryset=ActsIdsModel.objects.values("releveAnnee", "releveMois", "noOrdre").filter(validated=0))
如何解决问题?当我选择列时,我的模型的unicode函数似乎不再被调用。正确的