2012-02-24 156 views
1

我覺得有一個明顯的答案,這顯示unicode的...在Django模板

我已經得到了我想要的Django模板使用unicode值的列表。

該機型...

# models.py 
class MyModel(models.Model): 
    # ... 
    def my_char_fields(self): 
     return AnotherModel.objects.filter(mymodel=self.pk).values_list('cf').distinct() 

class AnotherModel(models.Model): 
    # ... 
    cf = models.CharField(max_length=6) 
    mymodel = ForeignKey(MyModel) 

在我的模板...

#MyTemplate.html 
<ul> 
{% for cf in mymodel.my_char_fields %} 
<li>cf</li> 
{% endfor %} 
</ul> 

的結果是這樣的東西:

  • (u'BL」,)
  • (u'M24',)

,但它應該是:

  • BL
  • M24

回答

3

你忘了傳遞flat=True.values_list()

+0

那麼肯定會修復它:)我不明白爲什麼... – ajwood 2012-02-24 02:42:42

+0

「它返回元組時迭代」 – 2012-02-24 02:44:07

+0

啊所以「正確的」BL,M24實際上是unicode字符串?當它們以元組打印時,它們顯示的方式會有所不同? – ajwood 2012-02-24 02:49:44