检查模板中字符串的 unicode 列表
Posted
技术标签:
【中文标题】检查模板中字符串的 unicode 列表【英文标题】:Checking against a unicoded list of strings in template 【发布时间】:2012-02-01 17:37:19 【问题描述】:我的模板中有以下代码(请注意if
语句):
% for base in bases %
<label class="checkbox">
<input name="base" value= base.id type="checkbox"
% if base.id in selected_bases %checked="checked" % endif %/>
<span> base.name </span>
</label>
% endfor %
selected_bases
变量是一个 unicode 字符串列表:[u'3', u'1', u'5']
。
base.id
是一个整数。
如何使它们具有相同的类型,以便 if
语句执行我需要的操作?
【问题讨论】:
你能把视图中的selected_bases
作为整数传递吗?
@aganders3:我不想。 selected_bases
是来回传递selected_bases = request.GET.getlist('base')
的碱基列表。 @gruszczy 下面的解决方案可以解决问题
【参考方案1】:
我不知道这是否有效,但试试这个:
% if value|stringformat:"d" in selected_bases %
【讨论】:
【参考方案2】:您可能应该在视图中执行此操作,但您可以通过add 过滤器对列表值进行管道传输,该过滤器执行强制类型 - 或将整数传输到 slugify
,这将执行相反的操作。更多信息here。
【讨论】:
以上是关于检查模板中字符串的 unicode 列表的主要内容,如果未能解决你的问题,请参考以下文章
将Unicode列表转换为包含Python字符串的列表的简单方法?
如何检查 Javascript 中 Unicode 字符串的相等性?
从列表中获取包含 JavaScript 中的 Unicode 的字符串