[英]dynamically add js variable value in django template url with appname and namespace
我在项目中有多个应用程序,并且使用appname和名称空间作为url。 我需要在django模板网址中使用应用程序名称动态添加js变量值。 如果我没有写appname之类的文字-
var temp =23
var href = "{% url 'report_page' id=0 %}".replace(/0/, temp.toString())
它给出了预期的结果,因为-
"{% url 'report_page' location_id=23 %}"
但是当我使用appname时,它对我不起作用
var href = "{% url 'appname : report_page' id=0 %}".replace(/0/, temp.toString())
让我给您确切的代码:在Django模板中:
<html>
<a href="{% url 'appname : report_page' id=0 %}">Report</a>
</html>
var href =“ {%url'appname:report_page'id = 0%}”。replace(/ 0 /,temp.toString())
在应用名称的url.py中:
def report_page(request):
import pdb;pdb.set_trace()
# location_id = request.GET['id']
return render(
request,
'report.html',
{'id' : request.user.id, 'id' : ''}
)
在视图中:
var temp =$('#check_id').val() <a href="{% url 'appname: report_page' %}?id="+temp;>Report</a>
注意:我使用的是django 1.11,我也尝试过以下方法,但得到的字符串为空:
var temp =$('#check_id').val() <a href="{% url 'appname: report_page' %}?id="+temp;>Report</a>
当您使用djagno网址(例如{% url 'appname : report_page' id=0 %}
)时,当django模板呈现时,它将转换为类似/appname/report-page/0/
的解决方案,首先是将采取a
标签属性,然后值改变这一点。 请找到以下解决方案。
var arr = $("a").attr('href').split('/') arr[arr.length-2]=777 # demo value $("a").attr('href',arr.join('/'))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.