如何在django模板中读取传递过去的字典参数中的某一项?

网上关于模板中使用字典都是说的循环读取,我这里说的不是循环读取。往页面传递一个参数:content={'genders':{'male':u'男','female':u'... 网上关于模板中使用字典都是说的循环读取,我这里说的不是循环读取。

往页面传递一个参数:

content = {'genders' : {
'male' : u'男',
'female' : u'女',
}
}

页面是这样输出的:

{% for customer in customers %}
{{ customer.name }}是{{ customer.gender }}性客户<br/>
{% endfor %}

customer 对象中的 gender 属性用的是英文
这里该怎么通过访问 genders 字典改成输出中文呢?

* 说明:不讨论设计是否合理,只是作为一个小例子。
* 如果有更好的方式传参也可以一并说明。
展开
 我来答
寄宿国风原创汉服
推荐于2017-12-15 · TA获得超过119个赞
知道小有建树答主
回答量:207
采纳率:100%
帮助的人:110万
展开全部
两个方法:
1. 你可以用翻译文件 {% trans ,这样就不需要去取genders了
2. 可以增加一个filter,参考这里: https://code.djangoproject.com/ticket/3371
匿名用户
推荐于2016-08-19
展开全部
  django 模板直接遍历字典就可以实现;
  参考例子:
  方法一:
  t = Template('{% for key, value in dict.items %}{{ key }}===>{{ value }}\n{% endfor %}')
  t.render(c)
  方法二:
  t = Template('{% for key in dict.items %}{{ key.0 }}===>{{ key.1 }}\n{% endfor %}')
  t.render(c)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式