就业指导 > 文章详情

记django提高项目-个人博客

何华锋1年前 Python

这几天边看视频边学如何用django制作个人博客,今天看完视频,也自己动手大体完成了一个个人博客的雏形,中间学习到了不少东西:

管理界面的自定义、加入富文本编辑器、使用settings.py配置全局变量、图片上传设置、模板如何拆分(include和block)、设计模型时如何自定义后台显示字段和返回字段、过滤器如何使用和如何自定义过滤器、如何进行多表查询和聚合函数的使用、csrf验证的加入与豁免、django重量级的体现(自带封装好的登录,注销,验证类)


先放几张效果图看看:

记django提高项目-个人博客.png


记django提高项目-个人博客.jpeg

具体的代码记录可以看这里:

https://github.com/hughohoho/maiziedu/commits/master


df80ac1 第十四次作业-个人博客-整合调试-在settings中添加全局变量并修改模板中的广告图片路径,确保在任何地方调用广告都能显示图片

9871ed0 第十四次作业-个人博客-整合调试-修改文章面板显示字段,添加分类选项

abc3dfe 第十四次作业-个人博客-整合调试-调试了导航栏,确保可以跳转到分类

10d23c6 第十四次作业-个人博客-整合调试-调试了一下分页器,确保正确运行

19a3521 第十四次作业-个人博客-整合调试-实现登录注册注销

06cd9a1 第十四次作业-个人博客-整合调试-完成文章详情页面及相关评论的显示与提交

4573180 第十四次作业-个人博客-注册登录注销-验证是否已登录

1f68779 第十四次作业-个人博客-注册登录注销-解说注销代码

c16f598 第十四次作业-个人博客-注册登录注销-解说登录的方法-django之所以称之为重量级,就是因为它把很多常用的东西都封装好了,可以大大加快开发过程

7706b7a 第十四次作业-个人博客-注册登录注销-解说注册的方法

fb4792a 第十四次作业-个人博客-注册登录注销-添加urls映射和相应方法

676ccdf 第十四次作业-个人博客-评论-post请求时的csrf验证与豁免

53eaf4d 第十四次作业-个人博客-评论-views.py中写了一个发表评论的方法,先验证再开始创建评论对象并写入数据库

1c1b864 第十四次作业-个人博客-评论-views.py中的文章详情方法还初始化了一个表单对象,为登陆和未登陆的用户填入默认值,提高用户体验

d112f2f 第十四次作业-个人博客-评论-forms.py解读-可以直接设定class属性

291f903 第十四次作业-个人博客-评论-为发表评论专门写了个forms.py的代码

cd9aa9b 第十四次作业-个人博客-评论-注释说明评论在文章详情页如何输出

56b49f9 第十四次作业-个人博客-评论-消化文章详情页方法中获取评论的代码,注意尽量减少数据库读取次数

4c707d3 第十四次作业-个人博客-自定义过滤器-具体自定义过滤器并注册之后载入到模板中再使用

494c2b9 第十四次作业-个人博客-自定义过滤器-自定义过滤器需要在app下新建templatetags,再在里面新建myfilter.py

5195f31 第十四次作业-个人博客-自定义过滤器-介绍django自带的过滤器date和safe

ca9822d 第十四次作业-个人博客-自定义过滤器-把新加入的模板改成django标签格式

6c00afd 第十四次作业-个人博客-自定义过滤器-sublime text 的SublimeLinter的指导下修改为PEP8风格

4a43ee5 第十四次作业-个人博客-自定义过滤器-添加了几个字段并migrate

fca2a97 第十四次作业-个人博客-自定义过滤器-添加了几个模板文件

40fb53c 第十四次作业-个人博客-重构代码-第四步-重构传递的数据,改成用locals()更简洁

b3eb41b 第十四次作业-个人博客-重构代码-第一步-重构 文章排行榜-分成三种查询方式-完成按评论排序-老师提供更为优雅的方式,用聚合函数annotate

c0ad375 第十四次作业-个人博客-重构代码-第三步-修改分页模板,确保在归档页面也可以使用

b555f04 第十四次作业-个人博客-重构代码-第三步-重构分页模板

8c366db 第十四次作业-个人博客-重构代码-第三步-重构分页代码

b2e8e34 第十四次作业-个人博客-重构代码-第二步-重构urls.py

48008e6 第十四次作业-个人博客-重构代码-第一步-重构 文章排行榜-分成三种查询方式-完成按评论排序-自定义管理器完成较为复杂的sql查询,比如分组统计排序。

f4bdcc4 第十四次作业-个人博客-重构代码-第一步-重构 文章排行榜-分成三种查询方式-完成站长推荐文章

e57d140 第十四次作业-个人博客-重构代码-第一步-重构 文章排行榜-分成三种查询方式-完成按点击排序

afc54fc 第十四次作业-个人博客-重构代码-第一步-重构 文章排行榜-分成三种查询方式

bdf0452 第十四次作业-个人博客-重构代码-第一步-重构 重构友情链接

bb2991a 第十四次作业-个人博客-重构代码-第一步-重构 标签云-修改url映射-修改views业务逻辑,注意多对多和外键关系如何多表查询-在base.html修改相应的标签云代码

303b3ad 第十四次作业-个人博客-重构代码-第一步-重构 标签云-复制archive.html为tag.html

d4499c7 第十四次作业-个人博客-重构代码-第一步-重构 标签云-base.html替换+global_setting取数据

0831dda 第十四次作业-个人博客-重构代码-第一步-重构 类别,广告,归档,标签云,友情链接,文章排行这些公用模块,放到django预先准备的global_setting中

e9f9318 第十四次作业-个人博客-完成归档方法的业务逻辑,注意如何进行模糊查询

25010a4 第十四次作业-个人博客-自定义管理器-urls中添加映射-views中添加处理方法-base中添加跳转请求

7333475 第十四次作业-个人博客-自定义管理器-在base.html中添加归档标签

334ed03 第十四次作业-个人博客-自定义管理器-为归档新建管理器

300d7a2 第十四次作业-个人博客-自定义管理器-在views.py中使用文章管理器

062958e 第十四次作业-个人博客-自定义管理器-在models中自定义管理器并引入到相关模型

ca98047 第十四次作业-个人博客-模板规划设计-解决广告图片不显示问题,其实是字段没写对,再修改一下路径组成就可以了

0105409 第十四次作业-个人博客-分页器-最后一步,在模板添加分页显示

604f02b 第十四次作业-个人博客-分页器-文章和评论是一对多关系,要加后缀_set

a31c1b1 第十四次作业-个人博客-分页器-用过滤器修改日期显示格式

cedb074 第十四次作业-个人博客-分页器-在模板中渲染传过来的数据,需要注意的是如何根据外键和多对多关系来直接通过orm使用其他表的数据,比如这里只查了文章表,但是可以直接获取相关的标签和评论数据

f06a6ce 第十四次作业-个人博客-分页器-如果传递的数据变量较多,可以直接用locals()代替,默认传递所有数据

9e3d396 第十四次作业-个人博客-分页器-引入django原生分页类写完分页方法并返回渲染

58cedb5 第十四次作业-个人博客-模板规划设计-查询广告表并在ad.html中渲染展示广告,暂时有问题是图片不显示

35dec20 第十四次作业-个人博客-模型设计-一定要注意python3用__str__,python2用__unicode__来返回后台数据表的记录名

1d91576 第十四次作业-个人博客-模板规划设计-分割时少了一个div闭标签,导致布局出错

7b0e3b7 第十四次作业-个人博客-模板规划设计-在base.html添加分类信息显示

3582819 第十四次作业-个人博客-模板规划设计-新建ad.html,把广告代码放在这里,然后用include标签嵌入到index.html

2310d2b 第十四次作业-个人博客-模板规划设计-新建index.html,开始继承base.html,然后把抠出来的html代码加入去,先加的left_content

dbacfb3 第十四次作业-个人博客-模板规划设计-把base.html拆开,并加入一些block标签

691dcdb 第十四次作业-个人博客-模板规划设计-把index备份后改为base.html,准备拆分

4123cd4 第十四次作业-个人博客-上传图片-在富文本编辑器kindeditor的配置文件中配置上传路径

69b4e0b 第十四次作业-个人博客-上传图片-在views.py中使用这个upload.py

3e8182d 第十四次作业-个人博客-上传图片-对upload.py进行一些说明

7c1491d 第十四次作业-个人博客-上传图片-已经可以上传图片了,为了富文本编辑器上传图片专门写了uplaod.py

18b58cc 第十四次作业-个人博客-上传图片-在urls.py中使用settings.py中设置好的配置

457f47b 第十四次作业-个人博客-上传图片-配置settings.py

94f1a8c 第十四次作业-个人博客-富文本编辑器-在富文本编辑器的配置文件中设置一些基本属性,更多的设置可以去官网看看

43f88c1 第十四次作业-个人博客-富文本编辑器-在admin.py中配置这个富文本编辑器

4341357 第十四次作业-个人博客-富文本编辑器-在js中添加下载的富文本编辑器

a50c268 第十四次作业-个人博客-admin-更多自定义选项,可以自己阅读官方文档admin部分去全面了解

a3475a3 第十四次作业-个人博客-admin-自定义展开与合并显示

bafd447 第十四次作业-个人博客-admin-自定义不显示哪些字段

a677164 第十四次作业-个人博客-admin-自定义显示哪些字段

64c7381 第十四次作业-个人博客-admin-将所有model注册到blog下的admin.py中,这样在admin后台就能看到这些数据表了

883008a 第十四次作业-个人博客-数据库+模型-makemigrations时出现问题HINT: Add or change a related_name argument to the definition for 'User.groups' or 'User.groups'.这需要我们在settings中指明我们虽然继承了AbstractUser,但用的是自己继承之后扩展的模型

039cb86 第十四次作业-个人博客-数据库配置-记得配置__init__.py,在其中导入pymysql模块,另外就是缩进要用tab,空格是不认的

1b007e9 第十四次作业-个人博客-模型设计-凡是代码或注释中出现中文,都需要声明编码格式

3c09b3f 第十四次作业-个人博客-数据库配置

996a40b 第十四次作业-个人博客-模型设计-多对多关系会自动生成一张表

53c99c1 第十四次作业-个人博客-模型设计-广告

f958cf2 第十四次作业-个人博客-模型设计-友情链接

d831fb0 第十四次作业-个人博客-模型设计-评论

4d49a11 第十四次作业-个人博客-模型设计-文章

19e13c5 第十四次作业-个人博客-模型设计-用户-继承方式

a02528c 第十四次作业-个人博客-模型设计-文章分类

3283d40 第十四次作业-个人博客-模型设计-标签

8288b9c 第十四次作业-个人博客-学习在settings.py中配置全局使用的一些信息,比如说网站标题,描述

fd0594a 第十四次作业-个人博客-学习日志器的配置与使用,在setting中配置好之后主要在views.py中调用

1c8e672 第十四次作业-个人博客-修改模板的静态标签,确保完美展现首页。需要注意轮播图片也是用静态标签引入的,然后就是配置STATICFILES_DIR的时候记得加逗号,否则不是元组,django不能识别

d68e516 第十四次作业-个人博客-导入静态文件和模板

3070d34 第十四次作业-个人博客-创建项目和app之后配置settings


163

登录 后参与讨论

没有更多评论了

您有一个双11钜惠红包未领取

客服热线 400-862-8862

回到顶部