想要创建一个Django的简单站点,首先需要安装Django。这里安装的是3.1版本
从命令行cd
进入要存储代码的目录,然后运行以下命令:
$ django-admin startproject mysite
这将mysite
在当前目录中创建一个目录。
需要避免使用内置的Python或Django组件来命名项目。特别是,这意味着应该避免使用类似 django
(与Django本身冲突)或test
(与内置Python包冲突)之类的名称。
代码应该放在哪里?
将代码放在文档根目录之外的某个目录中,例如 /home/mycode
。
上面执行的startproject命令创建了以下的目录结构
mysite/
manage.py
mysite/
__init__.py
settings.py
urls.py
asgi.py
wsgi.py
- 外部
mysite/
根目录是项目的容器。它的名称对Django无关紧要;可以将其重命名为任何喜欢的名称。 manage.py
:一个命令行实用程序,可以以各种方式与该Django项目进行交互。- 内部
mysite/
目录是项目的实际Python包。它的名称是Python包名称,需要使用它来导入其中的任何内容(例如mysite.urls
)。 mysite/__init__.py
:一个空文件,告诉Python该目录应视为Python软件包。mysite/settings.py
:此Django项目的设置/配置mysite/urls.py
:此Django项目的URL声明;Django支持的网站的“目录”。mysite/asgi.py
:与ASGI兼容的Web服务器为项目提供服务的入口点。mysite/wsgi.py
:兼容WSGI的Web服务器为项目提供服务的入口点。
要验证django项目是否有效,只需要cd进入mysite目录,然后执行以下命令
python manage.py runserver
这里就会启动开发服务器(不要在生产环境中使用此服务器)
自动重新加载 runserver
开发服务器会根据需要自动为每个请求重新加载Python代码。您无需重新启动服务器即可使代码更改生效。但是,某些操作(例如添加文件)不会触发重新启动,因此在这种情况下,您必须重新启动服务器。
该path()
函数传递了四个参数,其中两个是必需的: route
和view
,以及两个可选的参数:kwargs
和name
。在这一点上,有必要回顾一下这些论点的含义。
path()
参数:route
¶
route
是包含URL模式的字符串。在处理请求时,Django从第一个模式开始,urlpatterns
然后沿列表向下移动,将请求的URL与每个模式进行比较,直到找到匹配的URL。
模式不搜索GET和POST参数或域名。例如,在对的请求中https://www.example.com/myapp/
,URLconf将寻找 myapp/
。在请求中https://www.example.com/myapp/?page=3
,URLconf也将寻找myapp/
。
path()
参数:view
¶
当Django找到匹配的模式时,它将使用HttpRequest
对象作为第一个参数,并从路由中获取的所有“捕获”值作为关键字参数,调用指定的view函数。我们将举一个例子。
path()
参数:kwargs
¶
可以在字典中将任意关键字参数传递给目标视图。在本教程中,我们不会使用Django的此功能。
path()
参数:name
¶
命名URL可以使您在Django中的其他地方(尤其是在模板内部)明确地引用它。这项强大的功能可让您仅触摸单个文件即可对项目的URL模式进行全局更改。