在 django 模板中显示 unicode
我觉得对此有一个明显的答案...
我有一个我想在 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
I feel there's an obvious answer to this...
I've got a list of unicode values that I want to use in a django template.
The models...
# 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)
And in my template...
#MyTemplate.html
<ul>
{% for cf in mymodel.my_char_fields %}
<li>cf</li>
{% endfor %}
</ul>
The result is stuff like:
- (u'BL',)
- (u'M24',)
but it should be:
- BL
- M24
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您忘记将
flat=True
传递给.values_list()
。You forgot to pass
flat=True
to.values_list()
.