2013-09-13 3 views
1

Я не могу понять, как форматировать вывод ModelChoiceField, когда выбраны только 2 или 3 столбца.django modelchoicefield select columns

Вот моя модель:

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) 
    ... 
    #many other fields 
    ... 
    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)) 

This works

Но приведенный ниже код не работает:

class ActsAddForm(forms.Form): 
    actsToValidate=forms.ModelChoiceField(queryset=ActsIdsModel.objects.values("releveAnnee", "releveMois", "noOrdre").filter(validated=0)) 

This does not work!!

Как исправить эту проблему? Похоже, что когда я выбираю столбцы, функция юникода моей модели больше не вызывается. Правильно?

ответ

Смежные вопросы