Django搭建个人博客之编写博客文章的Model模型

本文介绍了Django框架中Model模型的概念,用于映射数据库,简化SQL操作。通过编写Model.py文件创建博客文章的数据模型,包括文章的作者、标题、正文等字段,利用外键关联到Django内置的User模型。此外,文章详细讲解了数据迁移过程,包括创建和应用迁移,确保模型的更改同步到数据库。
摘要由CSDN通过智能技术生成

写在前面

Django 框架主要关注的是模型(Model)、模板(Template)和视图(Views),称为MTV模式。
它们各自的职责如下:

层次 职责
模型(Model),即数据存取层 处理与数据相关的所有事务: 如何存取、如何验证有效性、包含哪些行为以及数据之间的关系等。
模板(Template),即业务逻辑层 处理与表现相关的决定: 如何在页面或其他类型文档中进行显示。
视图(View),即表现层 存取模型及调取恰当模板的相关逻辑。模型与模板的桥梁。

简单来说就是Model存取数据,View决定需要调取哪些数据,而Template则负责将调取出的数据以合理的方式展现出来。

数据库与模型

数据库是存储电子文件的场所,储存独立的数据集合。一个数据库由多个数据表构成。

啥意思?举个栗子,三年级二班中同学们的花名册就是数据表。有的花名册记录每位同学的考试成绩、有的记录身高体重、还有的记录兴趣爱好…所有的这些花名册都放在老师的柜子里,这个柜子就是“数据库”了。

默认情况下,数据库就是db.sqlite3这个文件了。在网站上线后你可能想换别的数据库,不过目前我们还不需要讨论这个内容。

操作数据库使用的是复杂的SQL语句,它是完全不同于Python的另一种语言,这对新手来说无疑是困难的。

幸运的是,在 Django 里写Web应用并不需要你直接去操作数据库,而是定义好模型(用Python语法就可以了!),模型中包含了操作数据库所必要的命令。也就是说你只需要定义数据模型,其它的底层代码都不用关心,它们会自动从模型生成。

其实它有专门的术语,叫对象关系映射Object Relational
Mapping,简称ORM),用于实现面向对象编程语言里不同类型系统的数据之间的转换。

编写Model.py

如前面所讲,Django中通过模型(Model)映射到数据库,处理与数据相关的事务。

对博客网站来说,最重要的数据就是文章。所以首先来建立一个存放文章的数据模型。

打开article/models.py文件,输入如下代码:

article/models.py

from django.db import models
# 导入内建的User模型。
from django.contrib.auth.models import User
# timezone 用于处理时间相关事务。
from django.utils import timezone

# 博客文章数据模型
class ArticlePost(models.Model):
    # 文章作者。参数 on_delete 用于指定数据删除的方式
    author = models.ForeignKey(User, on_delete=models.CASCADE)

    # 文章标题。models.CharField 为字符串字段,用于保存较短的字符串,比如
评论 17
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值