说说如何使用 Django 创建项目

1 创建项目

假设我们想创建一个监控程序项目。首先在命令行中,cd 到新项目的路径,然后运行以下命令:

django-admin startproject monitor

这里的 monitor 是新建的项目名称。

注意: 项目名称不能使用 Python 或 Django 的内部保留字。

执行成功后,就会创建项目的基础结构,结构说明具体可参见此文:说说 Python Django 应用的基础目录结构

2 运行项目

cd 切换到刚刚创建的 monitor 文件夹,然后运行下面命令:

monitor>python manage.py runserver

运行结果:

Watching for file changes with StatReloader
Performing system checks...

System check identified no issues (0 silenced).

You have 17 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.
Run 'python manage.py migrate' to apply them.
...
Django version 3.0, using settings 'monitor.settings'
Starting development server at http://127.0.0.1:8000/

该命令会启动 Django 自带的用于开发环境的简易服务器,这个服务器本身是用 Python 写的轻量级的 Web 服务器。这个服务器只是为了开发调试方便而设计的,不适用生产环境哦!

打开浏览器,输入 http://127.0.0.1:8000/,就能看到 Django 的小火箭啦:

命令模式输入 CTRL + C,即可停止服务。

runserver 参数后可带端口号,用于指定服务端口。比如,我们希望服务运行于 9000 端口,就可以输入以下命令:

python manage.py runserver 9000

开发服务器会在必要的情况下,针对每一次的访问请求重新加载一遍 Python 代码,所以我们修改代码后,无须重启服务器。但有些情况下(比如添加新文件)不会自动重载,这时就需要手动重启服务器咯。

3 创建应用

假设这个监控项目需要一个图表展示应用(官方叫做 app),那我们就可以在 monitor 下创建一个 chart 模块啦,在 monitor 路径下输入以下命令 :

python manage.py startapp chart

在 Django 中,每一个应用都是一个 Python 包。通过刚才的命令,Django 就会帮助我们生成 app 的基础目录结构。

项目与应用之间的关系,官网上这么说明的:

What’s the difference between a project and an app? An app is a Web application that does something – e.g., a Weblog system, a database of public records or a small poll app. A project is a collection of configuration and apps for a particular website. A project can contain multiple apps. An app can be in multiple projects.


总的来说,应用就是所能提供的服务,而项目是用来管理这些应用的。比如一个监控项目,可以包含图表、采集等应用服务。一个项目可以包含多个应用,而一个应用也能被用于多个项目。

发布了601 篇原创文章 · 获赞 668 · 访问量 88万+

猜你喜欢

转载自blog.csdn.net/deniro_li/article/details/103937708