![](/img/trans.png)
[英]After linking urls&views “hello world” is not visible in django
[英]NoRverseMatch Error when linking relative urls to views in django 1.9 templates
我在app.urls中使用view-callables,因為我不斷收到關於app.views.view_name已過時的警告
app.urls
from .views import (
post_list,
post_detail,
post_create,
post_edit,
post_delete,
recent_posts,
)
urlpatterns = [
url(r'^$', recent_posts, name='recent_posts'),
url(r'^post/$', post_list, name="list"),
url(r'^post/create/$', post_create, name="create"),
url(r'^post/(?P<slug>[\w-]+)/$', post_detail, name="detail"),
url(r'^post/(?P<slug>[\w-]+)/edit/$', post_edit, name="edit"),
url(r'^post/delete/$', post_delete, name="delete"),
]
這是我的項目urls.py
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^', include ("blog.urls", namespace="post")),
]
這是模板:
<div class="menu-wrap">
<nav class="menu">
<ul>
<li><a href="/">Home</a></li>
<li><a href="{% url 'app.views.view_name' %}">All Posts</a></li>
{% if user.is_authenticated %}
<li><a href="{% url 'app.views.another_view_name' %}"> Create Post </a></li>
{% endif %}
</ul>
</nav>
</div>
這是我不得不使用的,但它也很糟糕,可能更糟
<div class="menu-wrap">
<nav class="menu">
<ul>
<li><a href="/">Home</a></li>
<li><a href="{% url 'app.views.view_name' %}">All Posts</a></li>
{% if user.is_authenticated %}
<li><a href="{% url 'app.views.another_view_name' %}"> Create Post </a></li>
{% endif %}
</ul>
</nav>
</div>
請問關於如何在模板中表示我的觀點的網址的任何想法? 謝謝。
您應該使用名稱空間名稱,在您的情況下使用“ post”,后跟冒號(:),然后使用view_name例如列出所有帖子:
<li><a href="{% url 'post:list' %}">All posts</a><li>
您可以在Django文檔https://docs.djangoproject.com/en/1.9/ref/templates/builtins/#url中閱讀有關如何處理url的更多信息。
您想要使用在urls.py
文件中聲明的url name
鏈接到相關的URL。 因此,您的模板應該看起來像:
<div class="menu-wrap">
<nav class="menu">
<ul>
<li><a href="/">Home</a></li>
<li><a href="{% url 'list' %}">All Posts</a></li>
{% if user.is_authenticated %}
<li><a href="{% url 'create' %}"> Create Post </a></li>
{% endif %}
</ul>
</nav>
</div>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.