更改Django中的URL模式,使其不会';不显示应用程序名称
我有一个名为“projects”的文件夹/应用程序,我想在那里创建一个新站点,比如说,名为“cheese”。 在我的urlpatterns In urls.py In projects文件夹中更改Django中的URL模式,使其不会';不显示应用程序名称,django,django-urls,Django,Django Urls,我有一个名为“projects”的文件夹/应用程序,我想在那里创建一个新站点,比如说,名为“cheese”。 在我的urlpatterns In urls.py In projects文件夹中 path('cheese/', views.cheese, name='cheese') 但是整个URL看起来像是domain.co/projects/cheese 我想省略URL中的项目,所以它可以是domain.co/cheese 这些URL的事情对我来说有点难以理解,因为我不能正确地命名我的问题,
path('cheese/', views.cheese, name='cheese')
但是整个URL看起来像是domain.co/projects/cheese
我想省略URL中的项目,所以它可以是domain.co/cheese
这些URL的事情对我来说有点难以理解,因为我不能正确地命名我的问题,我无法找到解决方案,尽管我相信肯定有一些 在另一个
app
中包含app
的想法有点奇怪,但无论如何,如果正确设置url模式,这不会强制内部app的url与/…
类似
基本上,您已经拥有了domain.co/projects/cheese
,因为您将项目的应用程序URL包括为:
# main urls.py file for your project
path('projects/', include('projects.urls'))
在项目的URL文件中,您有:
# projects/urls.py
path('cheese/', include('projects.cheese.urls'))
因此,如果您想将cheese
url作为domain.co/cheese
,只需将include
添加到mainurl文件:
# main urls.py file for your project
path('projects/', include('projects.urls'))
path('cheese/', include('projects.cheese.urls'))
这是
curls.py
在cheese
应用程序中还是在主文件夹(包含settings.py
)中?主文件夹。也许我不应该称奶酪为“项目”,让我们把它命名为一些网站吧对不起,它不是应用程序中的一个应用程序,我只是在这里把它命名错了——我错了,已经编辑过帖子了。但我想这不会改变整个解决方案?你所说的“新网站”是什么意思?它不应该是django术语中的应用程序吗?无论如何,如果你有一个定制的urls.py
,你应该在主urls.py
文件(位于初始项目目录中的文件)中包含它,我是指子页面,但在这种情况下术语不应该那么重要,是吗?我知道了。所以在主url.py
文件中有类似于path('projects/',include('projects.url'))
的内容,对吗?这将为projects/ursl.py
中包含的所有URL添加一个/projects/前缀。因此,如果要删除该前缀,可以在主urls.py
文件中使用path(“”,include('projects.url'))
,并在希望的URL中显式添加“projects”。