gpt4 book ai didi

python - 从 Django 模板获取 URL 的第一部分

转载 作者:太空狗 更新时间:2023-10-29 17:08:55 32 4
gpt4 key购买 nike

我使用 request.path 获取当前 URL。例如,如果当前 URL 是“/test/foo/baz”,我想知道它是否以字符串序列开头,比如/test。如果我尝试使用:

{% if request.path.startswith('/test') %}
Test
{% endif %}

我收到一条错误消息,指出它无法解析表达式的其余部分:

Could not parse the remainder: '('/test')' from 'request.path.startswith('/test')'
Request Method: GET
Request URL: http://localhost:8021/test/foo/baz/
Exception Type: TemplateSyntaxError
Exception Value:
Could not parse the remainder: '('/test')' from 'request.path.startswith('/test')'
Exception Location: C:\Python25\lib\site-packages\django\template\__init__.py in __init__, line 528
Python Executable: C:\Python25\python.exe
Python Version: 2.5.4
Template error

一种解决方案是创建一个自定义标签来完成这项工作。还有其他方法可以解决我的问题吗?使用的 Django 版本是 1.0.4。

最佳答案

您可以使用切片过滤器获取 url 的第一部分

{% if request.path|slice:":5" == '/test' %}
Test
{% endif %}

现在不能尝试这个,也不知道过滤器是否在“if”标签内工作,如果不起作用,您可以使用“with”标签

{% with request.path|slice:":5" as path %}
{% if path == '/test' %}
Test
{% endif %}
{% endwith %}

关于python - 从 Django 模板获取 URL 的第一部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5352455/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com