前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >框架篇-Django博客应用-文章展示

框架篇-Django博客应用-文章展示

作者头像
小团子
发布2019-07-18 11:03:19
5020
发布2019-07-18 11:03:19
举报
文章被收录于专栏:数据云团数据云团

之前已经做好的首页框架,看看如何发布一篇文章并展示出来。

一篇文章从无到有,需要【书写--发布--储存--展示--评论】

Markdown 书写文章

在 python 中,安装 markdown 模块即可。

  • 进入虚拟环境,pip 安装 markdown

$ pip install markdown

文章编辑器

采用 markdown 来书写文章,需要一个支持 markdown 编辑预览的编辑器 Editor。

发布文章

发布一篇文章,先有一个能写文字并发布的页面;

页面具有两个内容,一个是链接地址,一个是页面内容。

View 视图

编辑 index/views.py 文件:

这次的视图是基于类的视图

BlogPublishView 类继承的是 FormView ;

使用的 Form 表单为 BlogPublishForm;模版为 blog_publish.html

Form 表单

在 index/ 目录下新建 forms.py 文件:

Blog model ,这里继续沿用

django 中的 form 表单

html 中的 form 表单,各大网站上的登录页面中的登录框或页面上的评论/留言框就是一个 form 表单。基本上网页上需要人为输入并验证的都是 form 表单。

save 函数

save 函数是在视图中进行调用的,在表单验证成功后执行。

save 函数将做如下几项工作:

1.根据 content (文章内容,Markdown 格式)

2.根据 title 生成 url ,在 title 后面加上 .html 可使这篇文章为伪静态页面。

3.设置初始值:views (阅读次数)

初始值为 0;

4.存入数据库。

模板

在 blog/templates 目录,创建 blog_publish.html 模板文件:

  • {% block head %} 中的三个资源文件都是编辑器 Editor 需要的,将资源文件单独放在这个页面引用,是因为只有这个页面才会用到这三个资源文件,其它页面不需要则不必进行引用了,免得拖慢了页面加载速度。
  • {% block scripts %} 中是进行初始化一个 Editor,它会自动嵌套到页面的第一个<textarea> 标签中。

url 页面地址

在 index/ 目录中,创建一个 urls.py 文件:

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-01-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 数据云团 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档