Django 通过路径传递一个变量,导致路径重复。如何摆脱这个循环?
Django passing a variable through the path, causing path repetitions. how to get out of that loop?
我知道这是一个衔铁问题,但这里是。
我有一个 url 路径如下:
path('projects/<s>', PL.projects),
然后我通过将 html 模板中的字符串放入 href 标记中来传递它,例如 projects/some_string
。这只工作一次,但随后基数 url 变为 <ip>/projects/some_string
。因此,当我尝试激发在该域中传递字符串的路径时,我收到错误消息,因为 url 现在是 <ip>/projects/projects/some_string
.
如何设置它以便我可以尽可能多地传递尽可能多的字符串,而不必每次都在浏览器中清理我的 url。
了解如何使用 reverse()
函数和 url
模板标签,您的问题就会迎刃而解。
这些函数是 Django 内置的,可以处理所有这些令人讨厌的 URL 东西。
反转:https://docs.djangoproject.com/en/3.2/ref/urlresolvers/
Url 模板标签:https://docs.djangoproject.com/en/3.2/ref/templates/builtins/#url
Django 内置了 url 查找功能
path("some_random_url_link_1/", views.Link1View.as_view(), name="url_link_1"),
path("some_random_url_link_2/<int:some_id>/<slug:some_slug>/", views.Link2View.as_view(), name="url_link_2"),
在您的模板中,您可以像这样使用它,并像这样传递 variables/parameters。仅供参考,您不需要在此处使用 {{variable}}
标签
<a href="{% url 'url_link_1' %}" >Link 1</a>
<a href="{% url 'url_link_2' some_id=id1 some_slug=random_slug %}" >Link 2</a>
我知道这是一个衔铁问题,但这里是。
我有一个 url 路径如下:
path('projects/<s>', PL.projects),
然后我通过将 html 模板中的字符串放入 href 标记中来传递它,例如 projects/some_string
。这只工作一次,但随后基数 url 变为 <ip>/projects/some_string
。因此,当我尝试激发在该域中传递字符串的路径时,我收到错误消息,因为 url 现在是 <ip>/projects/projects/some_string
.
如何设置它以便我可以尽可能多地传递尽可能多的字符串,而不必每次都在浏览器中清理我的 url。
了解如何使用 reverse()
函数和 url
模板标签,您的问题就会迎刃而解。
这些函数是 Django 内置的,可以处理所有这些令人讨厌的 URL 东西。
反转:https://docs.djangoproject.com/en/3.2/ref/urlresolvers/
Url 模板标签:https://docs.djangoproject.com/en/3.2/ref/templates/builtins/#url
Django 内置了 url 查找功能
path("some_random_url_link_1/", views.Link1View.as_view(), name="url_link_1"),
path("some_random_url_link_2/<int:some_id>/<slug:some_slug>/", views.Link2View.as_view(), name="url_link_2"),
在您的模板中,您可以像这样使用它,并像这样传递 variables/parameters。仅供参考,您不需要在此处使用 {{variable}}
标签
<a href="{% url 'url_link_1' %}" >Link 1</a>
<a href="{% url 'url_link_2' some_id=id1 some_slug=random_slug %}" >Link 2</a>