我们学习 HTML 文件的数据返回,替换其中的内容我们是固定的格式,现在我们学习从数据库的操作,从而能让我们的页面展现更多的内容。
如果不了解数据库的话,暂时就当做一个Excel 表格就好了吧..
数据库配置:
mysite/settings.py 。这是个包含了 Django 项目设置的 Python 模块。
通常,这个配置文件使用 SQLite 作为默认数据库。如果你不熟悉数据库,或者只是想尝试下 Django,这是最简单的选择。Python 内置 SQLite,所以你无需安装额外东西来使用它。当你开始一个真正的项目时,你可能更倾向使用一个更具扩展性的数据库,例如 PostgreSQL,避免中途切换数据库这个令人头疼的问题。
未做更改使用的是sqlite
使用其他数据库我们放在后面说。
我们还是用前面的项目 myblog 。
在 settings.py 文件中 INSTALLED_APP 列表里面添加我们的 blog 应用。
数据库操作的文件是 blog/models.py
Django 只需要只需要定义数据模型,然后其它的杂七杂八代码你都不用关心,它们会自动从模型生成。
我们新建一个 类 ,这个类就是数据库中的一个表,这个类一定要继承 models.Model 。
表里面有字段类型,我们根据需要设计:
代码语言:javascript复制class Article(models.Model):
""" 博客模型
建立类需要继承 models.Model
一个 id 字段会被自动添加,但是这种行为可以被改写。
Django 依据你在 配置文件 中指定的数据库后端生成对应的 SQL 语句。
"""
# 每个字段都被指定为一个类属性,并且每个属性映射为一个数据库列。
# charfield是字符串类型 max_length 设置最大值 参数第一个是备注
title = models.CharField('博客题目', max_length = 100) #博客题目
category = models.CharField('博客分类', max_length = 50) #博客分类 可为空
content = models.TextField('文章正文', blank = True, null = True) #博客文章正文
添加完后,在终端输入 :
代码语言:javascript复制python manage.py migrate
这个 migrate 命令检查 INSTALLED_APPS 设置,为其中的每个应用创建需要的数据表,至于具体会创建什么,这取决于你的 mysite/settings.py 设置文件和每个应用的数据库迁移文件(我们稍后会介绍这个)。这个命令所执行的每个迁移操作都会在终端中显示出来。
然后我们输入:
代码语言:javascript复制python manage.py makemigrations polls
通过运行 makemigrations 命令,Django 会检测你对模型文件的修改(在这种情况下,你已经取得了新的),并且把修改的部分储存为一次 迁移。
迁移是 Django 对于模型定义(也就是你的数据库结构)的变化的储存形式 - 没那么玄乎,它们其实也只是一些你磁盘上的文件。如果你想的话,你可以阅读一下你模型的迁移数据,它被储存在 blog/migrations/0001_initial.py 里。别担心,你不需要每次都阅读迁移文件,但是它们被设计成人类可读的形式,这是为了便于你手动修改它们。