2013-08-07 90 views
0

我知道我可以通過Blog.objects.values('name','entry_ headline')獲得ForeignKey和ManyToManyField屬性,是否有以相同的方式獲取選擇值?我的意思是Blog.objects.values('名稱','選項 _values'),而不是使用get_FOO_display()。如何獲得queryset中的選擇值?

+0

你有沒有嘗試創建一個模型的方法? –

+0

不,我認爲可能有內置的方式 – neelix

+0

我自己也在思考同樣的事情。說實話,我不知道爲什麼不可能做'foo__bar'。 –

回答

1

models.py

class MyModel(models.Model) 
    ALL = "ALL" 
    NONE = "NONE" 
    HALF = "HALF" 
    SELECT_CHOICES = (
     (ALL, "100%"), 
     (HALF, "50%"), 
     (NONE, "0%"), 
    ) 
    select_field = models.CharField(max_length = 255, choices = SELECT_CHOICES) 

    @property 
    def select_ratio(self): 
     return self.get_select_field_display() 

任何地方:

mymodels = MyModel.objects.all() 
for entry in mymodels: 
    print entry.select_ratio 
+0

這真的是一個很好的方法,但不是我要求的。無論如何非常感謝。 – neelix