Django学习教程(七)创建博客文章模型
前言
上一篇我们学习了Django模型层Model的基本概念,知道了模型类可以和数据库表对应。这一篇我们来创建博客文章模型。
我们后面要做的是一个简单博客项目,所以首先需要有一张文章表,用来保存文章标题、文章内容、创建时间等信息。
1.创建文章模型
打开blog应用下的models.py文件,编写Article模型。
代码:
from django.db import models
class Article(models.Model):
title = models.CharField(max_length=100)
content = models.TextField()
created_time = models.DateTimeField(auto_now_add=True)
updated_time = models.DateTimeField(auto_now=True)
这里我们定义了一个Article类,继承models.Model。
2.字段说明
title表示文章标题。
title = models.CharField(max_length=100)
CharField表示字符串类型,max_length表示最大长度。
content表示文章内容。
content = models.TextField()
TextField适合保存比较长的文本内容。
created_time表示创建时间。
created_time = models.DateTimeField(auto_now_add=True)
auto_now_add=True表示创建数据时自动设置时间。
updated_time表示修改时间。
updated_time = models.DateTimeField(auto_now=True)
auto_now=True表示每次修改数据时自动更新时间。
3.添加字符串方法
为了让后台或Shell中显示更友好,可以添加__str__方法。
代码:
from django.db import models
class Article(models.Model):
title = models.CharField(max_length=100)
content = models.TextField()
created_time = models.DateTimeField(auto_now_add=True)
updated_time = models.DateTimeField(auto_now=True)
def __str__(self):
return self.title
这样打印文章对象时,会显示文章标题。
4.模型类注意点
定义模型时需要注意:
- 模型类要继承models.Model
- 字段要使用Django提供的字段类型
- 字符串字段一般要设置max_length
- 修改模型后需要执行数据库迁移
5.总结
这一篇我们创建了博客文章模型Article,并定义了标题、内容、创建时间、修改时间几个字段。
模型类写好以后,还不会马上生成数据库表,下一篇我们需要执行数据迁移,让Django帮我们生成对应的数据库表。好了这一篇就到这里,如果对你有帮助,点赞加关注,下篇见。