在Django中创建项目
一、Django中创建项目
在依然处于活动的虚拟环境的情况下(11_env包含在括号内),执行django-admin startproject learning_log .
来新建一个项目( learning_log为项目文件名,可以另取)
(11_env) E:\wei\learning_log>django-admin startproject learning_log .
创建完成后我们可以查看下项目的目录结构:
(11_env) E:\wei\learning_log>ls
learning_log 11_env manage.py
(11_env) E:\wei\learning_log>ls learning_log
_init_.py settings.py urls.py wsgi.py
目录说明:
learning_log: 项目的容器。
manage.py: 一个实用的命令行工具,可让你以各种方式与该 Django 项目进行交互。
learning_log/init.py: 一个空文件,告诉 Python 该目录是一个 Python 包。
learning_log/settings.py: 包括Django 模块应用配置,数据库配置,模板配置等。
learning_log/urls.py: 该 Django 项目的 URL 声明; 一份由 Django 驱动的网站"目录"(路由配置文件)。
learning_log/wsgi.py: 一个 WSGI 兼容的 Web 服务器的入口,以便运行你的项目。
二、创建数据库
Django将大部分与项目相关的信息都存储在数据库中,因此需要创建一个供Django使用的数据库
命令:python manage.py migrate
(11_env) E:\wei\learning_log>python manage.py migrate
Operations to perform:
Apply all migrations: admin, auth, contenttypes, sessions
Running migrations:
Applying contenttypes.0001_initial... OK
Applying auth.0001_initial... OK
Applying admin.0001_initial... OK
Applying admin.0002_logentry_remove_auto_add... OK
Applying admin.0003_logentry_add_action_flag_choices... OK
Applying contenttypes.0002_remove_content_type_name... OK
Applying auth.0002_alter_permission_name_max_length... OK
Applying auth.0003_alter_user_email_max_length... OK
Applying auth.0004_alter_user_username_opts... OK
Applying auth.0005_alter_user_last_login_null... OK
Applying auth.0006_require_contenttypes_0002... OK
Applying auth.0007_alter_validators_add_error_messages... OK
Applying auth.0008_alter_user_username_max_length... OK
Applying auth.0009_alter_user_last_name_max_length... OK
Applying auth.0010_alter_group_name_max_length... OK
Applying auth.0011_update_proxy_permissions... OK
Applying sessions.0001_initial... OK
(11_env) E:\wei\learning_log>
运行命令ls,可以查看到创建一个文件db.sqlite3。(SQLlite
是一种使用单个文件的数据库,是编写简单应用程序的理想选择,因为它让你不用太关注数据库管理的问题)
(11_env) E:\wei\learning_log>ls
db.sqlite3 learning_log 11_env manage.py
小结:我们将修改数据称为迁移数据库。首次执行命令migrate
时,将让Django确保数据与项目的当前状态匹配。
三、启动服务器并查看项目
1、启动服务器,执行命令:python manage.py runserver
,如下所示:
(11_env) E:\wei\learning_log>python manage.py runserver
Watching for file changes with StatReloader
Performing system checks...
System check identified no issues (0 silenced).
July 24, 2019 - 15:39:33
Django version 2.2.3, using settings 'learning_log.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CTRL-BREAK.
2、打开一款Web浏览器,并输入http://127.0.0.1:8000/(或者http://localhost:8000),将会看到类似下图所示的页面,这个页面是Django创建的。(若要关闭这个服务器,按Ctrl+C即可)
注:如果页面出现错误消息“That port is already is use ”(指定端口已被占用),请执行命令python manage.py runserver 8001,让Django使用另一个端口(如果8001这个端口依然不可用,请不断执行上述命令,并逐渐增大其中的端口号,直到找到可用的端口)