gpt4 book ai didi

python - Django - 网址模式不起作用

转载 作者:太空宇宙 更新时间:2023-11-04 00:12:25 25 4
gpt4 key购买 nike

我昨天开始使用 Django,但出现了一点错误。我在互联网上搜索但找不到问题的答案。我制作了主应用程序,然后制作了一个小应用程序并尝试将其链接到主应用程序。这是我的代码

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 中有

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')

任何帮助都会很棒,谢谢!!!

最佳答案

您在这里使用了错误的工具:因为 ,基本上有两种指定 URL 的方法:

  1. 使用正则表达式 re_path [Django-doc] , url [Django-doc]是这个的“别名”,但最终可能会被弃用;和
  2. 通过对path [Django-doc] 使用特定的“路径模式”语法

在这里,您以某种方式混合了两者,并将path(..) 函数用于“regex-specified”URL。

对基于路径模式的 URL 使用路径

我们也可以使用path来修复它:

#  urls.py

from django.contrib import admin
from django.urls import <b>path</b>, include

ulrpatterns = [
<b>path</b>('admin/', admin.site.urls),
<b>path</b>('', include('personal.urls'));
]

和:

#  personal/urls.py

from django.urls import <b>path</b>, include
from . import views

ulrpatterns = [
<b>path</b>('', views.index, name="index");
]

对基于正则表达式的 URL 使用 re_path

我们也可以使用 re_path 来修复它:

#  urls.py

from django.contrib import admin
from django.urls import <b>re_path</b>, include

ulrpatterns = [
<b>re_path</b>('admin/', admin.site.urls),
<b>re_path</b>('^$', include('personal.urls'));
]

和:

#  personal/urls.py

from django.urls import <b>re_path</b>, include
from . import views

ulrpatterns = [
<b>re_path</b>('^$', views.index, name="index");
]

关于python - Django - 网址模式不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52063943/

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