标签:规则 频道 通过 edit 指定 保存 输出内容 草稿 关于
原本是跟着视频学,无奈发现视频中用到的资源找不到,于是自己买了本书来进行学习,贴上JD链接.《Django企业开发实战》
我的开发环境是win10+python3.8+django3.0.4,而书上是在linux环境下进行开发的,= =(汗),先这样学下去吧,毕竟面向百度编程.写博客也是为了督促一下自己,毕竟在家里宅着容易学着学着就玩手机去了..
书前面还有一些入门知识,这里我就直接跳到做项目的部分了.
目标是开发一个博客系统,
需求分析:
简单来说,博客分为两个部分:读者访问部分(用户端)和作者创作部分(作者端).
用户端部分
l 网站需要对SEO(搜索引擎优化)友好,并给搜索引擎提供XML格式的sitemap文件.(我的知识盲区)何为SEO?
l 提供博客搜索功能,搜索范围限定在标题,分类和标签上.
l 能够根据某个分类查看所有关于这一分类的文章,分类没有层级的关系,只有一级分类.一篇文章只能属于一个分类.
l 访问首页时,需要能看到由新到旧的文章列表.作者可以设置指定某篇文章,也可以同时置顶多篇文章.多篇文章置顶时,排序规则为从新到旧.
l 列表分页.对于首页,频道页和标签页,都需要提供分页需求,每页展示10篇文章.列表页展示文章时,需要展示摘抄,默认为文章的前140个字.
l 能通过RSS阅读器订阅博主的文章.(又是我的知识盲区)什么是RSS?
l 能对文章进行评论,不需要支持盖楼模式,只要在文章页面展示评论,在页面的侧边栏也需要能展示最新的评论.
l 能够配置友链,在一个页面中展示即可,不需要分类.但是需要能够制定某个友链的权重,权重高者在前面展示.
作者端需求
l 博客后台需要登录才能进去.目前没有多用户需求,以后考虑扩展.
l 能够创建分类和标签,一篇文章只能属于一个分类,但是可以属于多个标签.标签和分类都没有层级关系.
l 作者在后台需要设置文章标题,摘要(如果为空则展示文章前140个字),正文,分类和标签.不需要实时保存.文章格式默认为Markdown.考虑增加可视化编辑器.
l 增加文章配图时,图片需要增加水印,其内容为网站网址(这个功能做成可选的吧)
l 导航只是分类,默认展示在顶部.每篇文章都要有浏览路径,比如首页>文章分类>正文.对于导航的顺序,作者可以设置权重,权重高者在前.顶部最多展示6个分类,多余的分类展示到底部.
l 作者更新后,读者能够收到通知(搁置)
梳理一下我们的博客需要的功能点:
l 后端渲染页面,对SEO友好;
l 提供sitemap.xml文件,输出所有文章;
l 搜索功能,能够针对标题,分类和标签进行搜索;
l 根据分类和标签查看文章列表;
l 文章可以设置置顶(多篇);
l 列表页需要展示文章摘要,140字以内,可以作者填写,或者自动展示文章前的140个字;
l 列表页需要分页展示,每页10条;
l 提供RSS页面,根据RSS2.0规范输出内容;
l 文章页面支持评论,不需要盖楼,侧边栏能展示最新评论
l 评论模块需要验证码功能
l 后台能够配置友链,所有友链在一个页面中展示;
l 用户可以通过用户名和密码登录后台,然后才能创建文章;
l 需要考虑扩展多用户,多用户时需要对分类,标签,文章,友链的操作权限进行隔离
l 分类增删改查--字段:id,名称,创建时间,创建人,是否置顶,权重.
l 标签增删改查--字段:id,名称,创建时间,创建人.
l 文章增删改查--字段:id,标题,摘要,正文,所属分类,所属标签,状态(发布,草稿或删除),创建时间和创建人.
l 侧边模块用来展示侧边栏需要的数据,字段--id,类型,标题,内容,创建时期和创建人.
实体关系图(画实体图用的网站)
思维导图得到的结果
标签:规则 频道 通过 edit 指定 保存 输出内容 草稿 关于
原文地址:https://www.cnblogs.com/ylnx-tl/p/12601808.html