我昨天开始使用Django,但有一个小错误。我在互联网上搜索,但找不到我的问题的答案。我制作了主应用程序,然后制作了一个小应用程序,并尝试将其链接到主程序。这是我的代码
urls.py
from django.contrib import admin
from django.urls import path, include
ulrpatterns = [
path('admin/', admin.site.urls),
path('^$', include('personal.urls'));
]
我的个人网址中
from django.urls import path, include
from . import views
ulrpatterns = [
path('^$', views.index, name="index");
]
以及我拥有的views.index
def index(request):
return render(request, 'personal/home.html')
任何帮助都会很棒,谢谢!!!
答案 0 :(得分:3)
您在这里使用了错误的工具:自django-2.0起,基本上有两种方法可以指定URL:
re_path
[Django-doc]的正则表达式,url
[Django-doc]是其“别名”,但最终可能会被弃用;和path
[Django-doc]使用特定的“路径模式”语法在这里您以某种方式混合两者,并使用path(..)
函数作为“正则表达式指定的” URL。
path
用于基于路径模式的URL 我们也可以使用path
对其进行修复:
# urls.py
from django.contrib import admin
from django.urls import path, include
ulrpatterns = [
path('admin/', admin.site.urls),
path('', include('personal.urls'));
]
和:
# personal/urls.py
from django.urls import path, include
from . import views
ulrpatterns = [
path('', views.index, name="index");
]
re_path
用于基于正则表达式的URL 我们也可以改用re_path
来解决它:
# urls.py
from django.contrib import admin
from django.urls import re_path, include
ulrpatterns = [
re_path('admin/', admin.site.urls),
re_path('^$', include('personal.urls'));
]
和:
# personal/urls.py
from django.urls import re_path, include
from . import views
ulrpatterns = [
re_path('^$', views.index, name="index");
]