我有一个javascript这需要两个变量。e两个列表,一个列表中的数字和其他串名单从django/蟒蛇

numbersvar = [0,1,2,3]
stringsvar = ['a','b','c']

该numbersvar呈现完美的但是当我做{{stringsvar}}它不渲染。

有帮助吗?

解决方案

也许它将更好地使用 json 模块,以创建一个javascript名单?

>>> a = ['stste', 'setset', 'serthjsetj']
>>> b = json.dumps(a)
>>> b
'["stste", "setset", "serthjsetj"]'
>>> json.loads(b)
[u'stste', u'setset', u'serthjsetj']

其他提示

这是什么stringsvar包含哪些内容?列表,或者该列表的字符串表示?

我建议你从视图方法通过列表的正确JavaScript字符串表示的模板来渲染。 Python和JavaScript的数组文本具有相同的语法,所以你可以做:

def my_view(request):
    return render_template("...", stringsvar=str(the_list))

和在模板:

<script language="javascript">
stringsvar = {{ stringsvar }};
...
</script>

或者你也可以使用JSON序列化,这有额外的好处,你将能够通过其他类型的值也是如此。

from django.core import serializers
def my_view(request):
    return render_template("...", stringsvar=serializers.serialize("json", the_list))
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top