首页 > 解决方案 > 找不到“hobbieswithCSS.html”的反向。'hobbieswithCSS.html' 不是有效的视图函数或模式名称(已解决)

问题描述

我正在尝试将 hobbieswithCSS.html 文件附加到我的网站,同时使用 Django。我是 Django 的初学者,所以我很自然地遇到了一些像这样的问题(在标题中)。

我的主页上有这个锚标记 -

<a href="{% url 'basic_app:hobbieswithCSS.html' %}">My Hobbies</a>

我的views.py文件中有这个视图-

def hobbieswithCSS(request):
    return render(request,'basic_app/hobbieswithCSS.html')

我认为,主要问题在于 urls.py 文件中的 urlpatterns,因为我不确定如何设置它。这些是我的 urlpatterns -

urlpatterns = [
    url(r'^$', views.index, name='index'),
    url(r'^admin/', admin.site.urls),
    url(r'^basic_app/',include('basic_app.urls')),
    url(r'^logout/$',views.user_logout,name='logout'),
    url(r'^$', views.hobbieswithCSS, name='hobbieswithCSS'),
]

谁能告诉我,当我试图在我的服务器上运行它时,如何更改代码以显示该 hobbieswithCSS.html 文件?

非常感谢您的帮助。

编辑:这个问题最初是这个问题的前传 - TemplateDoesNotExist at /hobbies/(已解决)

标签: pythondjangodjango-viewsdjango-templatesurl-pattern

解决方案


肯定是:

<a href="{% url 'hobbieswithCSS' %}">My Hobbies</a>

没有basic_app.

您也有相同的 index 和 hobbies 路径。您必须更改您的 url 路径:

urlpatterns = [
    url(r'^$', views.index, name='index'),
    ...
    url(r'^hobbies/$', views.hobbieswithCSS, name='hobbieswithCSS'),
]

推荐阅读