我想动态地将变量传递给django模板标签,但我无法成功。
<input id="country" />
<div id="button"> Button </div>
$('#button').click(function(){
var dynamicVar=$('#country').val();
var tags= {
source: {% url myView dynamicVar %} /* but {% url myView 'someValue' %} works */
select: function(event, s){
$("#city").val(s.label);
};
$("#city").autocomplete(tags);
});
我收到NoReverseMatch错误,说没有传递dynamicVar。
长篇故事:我正在努力获得2个级联下拉列表。用户选择一个国家,然后城市输入变为可用。我希望城市场地是自动完成的场。目前,没有国家/地区字段,它可以工作,但查询速度很慢。所以我想预先过滤它。
答案 0 :(得分:1)
{% url myView dynamicVar %}
在服务器端呈现,因此您必须:
var dynamicVar = $('#country').val();
var url = 'http://your_site.com/autocomplete_country/' + dynamicVar + '/'
要避免在模板中对服务器名称进行硬编码,请使用request.get_host