Hello,大家好!下面就开始为大家介绍下如何搭建进阶版博客,正所谓兵马未动,粮草先行。
搭建个人博客,主要有两个方面,一个是MTV框架中的M,即Models层,主要涉及Models层和数据库。另外一个方面就是TV层。
今天,小安Sir就为大家分享下Django的Models层和数据库,难吗?不难!
为什么不一次性写完,因为太长了!
适当地对知识体系进行分解,有利于我们对知识吸收消化。
本文大纲
一. 环境信息
1.1 主机信息
操作系统:windows 10
主机IP地址:192.168.1.107/192.168.1.105
1.2 软件版本
Python版本:3.7.0
数据库版本:Mysql 8.0.15
1.3 pip模块
Django版本:2.1.7
PyMysql版本:0.9.3
二. 基本步骤
1. 快速安装Mysql数据库
2. 创建和配置个人博客
3. 微优化个人博客之数据篇
01 快速安装Mysql数据库
1.1 官网下载Mysql安装包
https://dev.mysql.com/downloads/mysql
1.2 解压安装包
1.3 创建my.ini文件
内容如下:
[mysqld]
basedir=F:\mysql\mysql-8.0.15-winx64
datadir=F:\mysql\mysql-8.0.15-winx64\data
1.4 创建Mysql数据库
1.5 启动Mysql数据库服务
1.6 找到初始密码
目录:F:\mysql\mysql-8.0.15-winx64\data
文件:DESKTOP-SSCLB77.err
备注:在mysql8的根目录下会生成一个data文件夹,里面有个以.err 结尾的文件,初始密码就在这个文件里。
1.7 修改root密码
1.8 创建进阶版个人博客的数据库
02 创建和配置个人博客项目
2.1 创建pyblog项目
2.2 创建APP(blog)
2.3 查看此时的目录结构
2.4 配置settings.py
1) 添加主机的IP地址
2) 添加APP(blog)模块
3) 修改语言和时区
2.5 测试网站的IP和端口是否OK
显示安装成功!
2.6 settings.py配置Mysql数据库
2.7 创建中介文件
2.8 models.py添加博客表
2.9 创建数据库和同步Django间的中介文件
执行"python manage.py makemigrations blog",让此模型生效
执行“python manage.py migrate”,同步更新数据库内容。
2.10 启动 admin 的管理界面
1) 打开网页http://192.168.1.105:8000/admin/,登陆!
2) 填写信息
3) 查看文件的概要情况
03 微优化个人博客数据篇
管理页面目前是使用英文显示表名,能否用中文显示表名呢?
当然啦,不是说英文不OK!只是我们在管理页面操作时,能不能为他们加上别名呢?方便我们高效管理,请见下面分享。
3.1 修改models.py
重点代码详解
1) 第27行
class Blogcontent(models.Model) 定义表名。
2) 第28行
title = models.CharField('文章标题',max_length=128) 定义该表名的列为title,字符串长度为128,中文显示“文章标题”。
3) 第30行
img = models.ImageField(upload_to='blog_image' 图片类型,
上传的图片文件夹在项目根目录的blog_image目录。
4) 第32行
abstract = models.TextField为文本框。
5) 第33行
visitnum = models.PositiveIntegerField 该列为自增长列。
6) 第34行
category = models.ManyToManyField('Category... 该列引用Category表,并且是多选。
7) 第36行
created_time = models.DateTimeField('创建时间',auto_now_add=True)时间类型,以当前时间为准。
8) 第47行 ordering = ['-created_time'] 该表显示顺序,以创建时间倒序排列。
9) 第48行 Blogcontent表在管理页面显示表名"博客正文"。
3.2 查看管理页面
管理页面原来显示的是英文表名,现在显示为中文表名
04 总结
Django的数据篇就分享到这里了,本章节只需关注如何创建Models.py和如何将其与数据库关联起来,千万不要想太多喔!
下篇文章就会分享如何搭建前端的界面 ,想想就很激动呢!还等什么?赶紧收藏起来实操起来吧!
最后,非常感谢大家的阅读,谢谢!是您的关注,给予我强大的动力,非常感谢!
[微信公众号:python自动化运维] ,关注我,优质干货,为您第一时间送达!
评论留言