【发布时间】:2020-07-11 07:29:36
【问题描述】:
当我们开始一个新项目时,我们会得到一个urls.py 文件。但是,当我们在项目中创建应用程序时,Django 不会为我们提供urls.py 文件,我们 需要手动创建它。这背后的确切逻辑/原因是什么?是否有甚至不一定必须有urls.py 文件的应用程序?
【问题讨论】:
当我们开始一个新项目时,我们会得到一个urls.py 文件。但是,当我们在项目中创建应用程序时,Django 不会为我们提供urls.py 文件,我们 需要手动创建它。这背后的确切逻辑/原因是什么?是否有甚至不一定必须有urls.py 文件的应用程序?
【问题讨论】:
首先你有你的项目 urls.py。这个文件是django查找某个url路径是否存在的起点。
当您使用多个应用程序时,您通常会告诉 django 在项目 urls.py 之后查找它们的 urls.py 文件。因此,在这种情况下,创建一个与应用相关的 urls.py 是有意义的,以便概述您的项目的整个 url 结构,分为您的应用。
当您只使用一个应用程序时,实际上没有必要拥有一个与应用程序相关的 urls.py 文件,因为您不必担心整个 url 结构。您只使用一个应用程序,因此 url 与该应用程序相关。
即使您只有一个应用程序,通常也会创建一个 urls.py 文件。这可能有多种原因。但是 django 让你做出这个选择。首先,您不知道将来是否会添加更多应用程序,因此您最好从一开始就创建一个整理好的文件结构。其次,由于模型-视图-控制器(django 实际上具有模型-视图-模板结构)的构建,您希望将视图、模型和路径保持在一起。它更干净,并且会在您的项目长大时为您提供帮助。
希望它变得更清晰一点,对你有所帮助。
【讨论】: