配置默认数据库:
打开 mysite/settings.py
。这是个包含了 Django 项目设置的 Python 模块。这个配置文件使用 SQLite 作为默认数据库。
默认开启的某些应用需要至少一个数据表,所以,在使用他们之前需要在数据库中创建一些表。请执行以下命令:
$ python manage.py migrate
创建模型
在 Django 里写一个数据库驱动的 Web 应用的第一步是定义模型 - 也就是数据库结构设计和附加的其它元数据。
在这个简单的投票应用中,需要创建两个模型:问题 Question
和选项 Choice
。
Question
模型包括问题描述和发布时间。
Choice
模型有两个字段,选项描述和当前得票数。每个选项属于一个问题。
这些概念可以通过一个简单的 Python 类来描述。
按照下面的例子来编辑 polls/models.py
文件:
激活模型
上面的一小段用于创建模型的代码给了 Django 很多信息,通过这些信息,Django 可以:
- 为这个应用创建数据库 schema(生成
CREATE TABLE
语句)。 - 创建可以与
Question
和Choice
对象进行交互的 Python 数据库 API。
但是首先得把 polls
应用安装到我们的项目里。
为了在我们的工程中包含这个应用,我们需要在配置类 INSTALLED_APPS
中添加设置。因为 PollsConfig
类写在文件 polls/apps.py
中,所以它的点式路径是 'polls.apps.PollsConfig'
。在文件 mysite/settings.py
中 INSTALLED_APPS
子项添加点式路径后,它看起来像这样:
现在你的 Django 项目会包含 polls
应用。接着运行下面的命令:
$ python manage.py makemigrations polls
通过运行 makemigrations
命令,Django 会检测你对模型文件的修改(在这种情况下,你已经取得了新的),并且把修改的部分储存为一次 迁移。
总结:
1、
- 编辑
models.py
文件,改变模型。 - 运行 python manage.py makemigrations 为模型的改变生成迁移文件。
- 运行 python manage.py migrate 来应用数据库迁移。
管理界面
创建一个管理员账号¶
首先,我们得创建一个能登录管理页面的用户。请运行下面的命令:
$ python manage.py createsuperuser
$ python manage.py runserver
打开浏览器,转到你本地域名的 "/admin/" 目录, -- 比如 "http://127.0.0.1:8000/admin/" 。你应该会看见管理员登录界面:
向管理页面中加入投票应用¶
但是我们的投票应用在哪呢?它没在索引页面里显示。
只需要做一件事:我们得告诉管理页面,问题 Question 对象需要被管理。打开 polls/admin.py 文件,把它编辑成下面这样:
参考资料:
https://docs.djangoproject.com/zh-hans/2.0/intro/tutorial03/