python 在django中,urls.py对每个应用程序有什么用?

nfs0ujit  于 12个月前  发布在  Python
关注(0)|答案(3)|浏览(130)

我正在做一个Django项目,我了解到我们需要为项目中创建的每个应用程序创建一个urls.py文件。
有没有人能告诉我们这样做的目的是什么,因为我们有一个主项目的urls.py文件,这还不够吗?

e7arh2l6

e7arh2l61#

主要是为了可重用性,部分是出于组织原因。单独的urls.py文件允许Django应用程序在项目之间可移植。如果您使用urls.py发布应用程序,那么它可以轻松地在许多不同的Django项目中使用。这在官方教程的Reusable Apps部分中有所介绍。
例如,Admin站点由Django自带的可重用admin.site应用程序提供。admin.site应用程序提供自己的urls.py文件,因此您可以轻松地添加到您自己的项目的url模式。
就像这样:

urlpatterns = [
    path('admin/', admin.site.urls),
    # ...
]

字符串
如果admin.site应用程序没有自己的urls.py文件,这是不可能的。
管理应用程序只是一个例子。有许多应用程序都是在PyPI上分发的,并且可以使用pip安装。
也就是说,这不是完全必要的。就像你指出的,有一个项目级的urls.py文件。如果你真的想,你可以单独使用它。

yqyhoc1h

yqyhoc1h2#

理解urls.py并不难。它用于在项目中创建路由。
路线如:

/home
/users etc.

字符串
这不是强制性的为每个应用程序创建urls.py。您可以在主项目中的urls.py中添加所有应用程序路径。这取决于您。
但是为每个应用程序创建urls.py看起来很容易理解。
路线定义了你要去的地方,意思是从一条路线到另一条路线。
请记住,每个视图都必须在urls.py中有路径。没有这个,它将不会出现在网页上。
希望你能理解!

c90pui9n

c90pui9n3#

如果你把所有的网站网址都放在urls.py

相关问题