Django-Vue搭建个人博客:结语
6173 views, 2021/04/03 updated Go to Comments
本系列文章到这里就告一段落了。
Django 后端你学习到了:
- REST 的概念
- 序列化器/APIView
- 类视图和通用视图
- 权限控制
- ModelSerializer
- 超链接字段/分页
- 视图集/ModelViewSet
- SearchFilter/DjangoFilterBackend
- 嵌套序列化器/操作外键
- 验证器/覆写动作
- 自定义字段
- 文件上传
- 添加保存数据
- 模型自关联
- JWT 身份验证
- 权限分配/自定义动作
Vue 前端你学习到了:
- 状态管理与双向绑定
- 模块组件化
- 请求接口数据
- 方法与监听
- 前端路由跳转
- 用户认证
- Token 的存储与使用
- 状态更新
- 组件通信
- 操作后端资源
- 文件的上传与下载
- 组合式API
除此之外,还学习了项目的部署。
还需努力
作为入门教程,它完成了使命。但是教程毕竟只是教程,接下来需要读者自己继续探索了。
下面列举一些教程中未涉及但是也很重要的知识点。
Vue 部分
和传统 MVC 模式相比,前后端分离项目有较多逻辑操作被移动到了前端(通过 Javascript);不用手动操作 DOM,写熟了非常的爽。
但是也带来一个严重的问题:百度、谷歌等搜索引擎获取不到你站点的数据,导致检索排名会非常的吃亏。(SEO问题)
这是因为请求数据的工作都是通过 Javascript 进行的,但是现目前很多搜索引擎只抓取 html 页面,而不会运行其中的 Javascript 脚本。换言之在搜索引擎看来,你的站点空空如也啥都没有。
在浏览器中打开本项目首页的源码(Ctrl + U),这就是搜索引擎看到的内容。
此问题可通过服务器端渲染(SSR)和静态生成等途径解决。基于 Vue 的 SSR 有 Nuxt.js;静态生成工具有 Saber 和 Gridsome。这些是需要读者继续往下学习的。
此时的服务器端渲染,和传统的服务器端渲染,其作用和内涵完全就是两码事了。
用不用前后端分离模式,还是得视情况而定。短平快的小项目(比如博客),用传统模式开发是完全ok的。
另外,教程用原生的 css 完成了博客界面,在实际项目中可能对美观的要求更高,你还需要学习几个基于 Vue 的 UI 框架,比如 Vuetify 等。
最后,Vue 3 的部分新功能,如 Teleport 、 Fragments 等本教程中没有提到,读者还需要多多阅读 Vue3 文档了。
Django 部分
Django 部分(特别是 DRF 部分)可以继续学习的内容也不少。
作为一个草根小站,有时候你希望同一个用户不要太频繁请求数据(甚至是恶意攻击)。DRF 框架提供了 Throttle 模块进行限流。
过一段时间你总能想到一个好点子,需要更新接口的结构。为了让旧接口不至于失效,并且区分用户使用的接口版本,接口版本管理就显得很有用了。
教程没办法将 Django 和 DRF 框架的全部内容囊括,这些都需要读者研究文档进行了解。
其他知识
进阶的道路是无止境的。
- 学习
Linux
,以便网站运维 - 学习数据库知识,让你在某些情况下摆脱 ORM,直接操作数据库
- 以及学习云服务器各种组件、微信支付接口、缓存数据库、...
结束和开始
我的教程写完了,你的学习刚开始。胜利前总有无数煎熬的夜晚。
读者是否学到新东西了呢?欢迎点击教程尾部的[打赏]按钮,请我喝杯咖啡。或者在我的GitHub仓库给一个小星星,感谢各位的支持。
下一个教程见。