Django个人网站,从开发到部署总结
来源:互联网 发布:淘宝企业店铺要钱吗 编辑:程序博客网 时间:2024/05/22 02:02
我的个人网站,点击查看
本文面向的是比较新手的玩家,大牛请绕行
第一部分 开发
对于0基础的同学,Django的上手其实不高,特别是配合自带的管理员admin界面,开发工作可以很直观。强烈建议跟随着官网的入门教程走一遍,上手很快。
下面我用一张图概括一下我所理解的Django:
在搞清楚每一个层的功能后,你不用耗力思考它们之间怎么合作,Django都给你处理好了,Django让你的精力全部放在业务逻辑。比如我的个人网站中,设计了绘图展示和小说展示的功能,扩展功能的时候很轻松,让我感觉到使用框架的巨大便利。
一些建议:
- 前端CSS框架我选择了Bootstrap,不过后来还发现挺多好看的框架的,我是后悔了,列出来大家慢慢选
- 可以使用Bootswatch来装饰Bootstrap,有不同的免费主题可以选择
- semantic-ui,如果熟悉Bootstrap,学习这个基本没有成本
- pure很小,很强大的CSS框架,简洁干净
- 偏爱流行的Material Design风格?那么这个框架Materializecss,和这个框架Mui很适合你
- Bluma也相当的不错
- Jquery是对于新手非常不错的选择,网上的教程很丰富,配合Bootstrap能实现挺多的效果,比如瀑布流
- 使用virtualenv,配置独立的python开发环境
- 更多的使用通用视图
- 一个好用的IDE可以帮你节约很多时间,推荐pycharm
在开发中我用到的一些第三方库:
- markdown2 - Django app 用来实现markdown文本的转化
- pyments - 结合markdown2实现了代码高亮
在开发过程中,这个github上的教程对我帮助很大,作者是一个全栈工程师,我参考了其中一些基础的部分,文中还有很多我没有完成的扩展,比如开发对应的APP和API等等。
第二部分 部署
我选择了尽量简单,免费的部署方式,这里给大家参考一下:
部署平台我对比选择了heroku
优势:
+ 操作简单,只要你会使用git,就能完成部署。一开始我看官网的教程,也是半懂不懂的。但是实际操作起来,发现过程步骤简直不能更少!
+ 免费,heroku提供免费版,对于个人博客来说,非常足够了
限制:
+ 官网需要翻墙
+ 注册需要的邮箱,qq,163都被封了。用Google邮箱注册的
+ heroku是可以自定义域名的,不过你得绑定一张信用卡。某宝25可以买到虚拟信用卡服务,你也可以绑定自己的。
你可以按照这个教程走一遍
Django部署后用的http服务器,我选择官方示例中的gunicorn, 而静态文件的serve,同样使用官方案例中的whitenoise
我自己的blog中,有一个文件保存功能要实现,但是Django中建议文件的server最好独立,并且heroku本身每次重启,都会清空非项目文件。所以利用其他方式来实现文件的保存非常必要。
我自己有一个虚拟主机,提供了FTP服务。所以我使用django-storages这个第三方库,这个官方库的文档有些不友好,怎么配置ftp存储啥都没解释。好在本身实现很简单。到Django的官网看看如何自定义一个FileStorage,然后看看源码,应该就没问题。
- Django个人网站,从开发到部署总结
- 从0开始搭建自己的个人网站教程(三)如何把代码部署到虚拟主机
- 译文 | 从开发到部署 Docker容器命令总结
- django项目部署到SAE上的个人博客
- 网站开发,从需求到前端到后端到部署到申请第三方各种接口,开发下来的心得
- windows下apache部署django项目个人总结(备查)
- windows下apache部署django项目个人总结(备查)
- 个人博客开通!——Django从入门到...WordPress
- django网站部署
- maven项目打包部署到tomcat+建立个人网站
- django部署到apache
- Django部署到Apache
- ODAC (odp.net) 从开发到部署
- Django个人博客开发
- 【Django开发】阿里云服务器+apache+django部署你的网站
- IIS7部署django网站指南
- Django--使用Apach2部署网站
- 网站开发从陌生到了解
- Linux C 一站式学习 第一部分基础知识
- java集合知识总结
- 替换host文件配置
- AndrewNg机器学习——01
- sdut 3252 Lowest Unique Price
- Django个人网站,从开发到部署总结
- 汇编指令的学习1——ARM汇编的特点
- Oracle循环语句及例子(几种循环语句的语法)
- 关于JDBC+MySQL批量写入: 用insert values方式批量写入
- 文本处理工具
- VirtualApp沙盒基本原理
- more effective c++——Item M29 引用计数(二)带静态成员变量的rfstring类实现
- java中的volatile与atomic
- lambda c++