马上就到9月了,阿里云给我推送了我的云服务器即将过期请续费的提醒短信。面对一年九百多的服务费用,虽然很不情愿继续支付,但是为了博客能够继续运行也懒得麻烦去换服务器,于是还是续费了。
自从离职又入职到新公司之后,已经三个月没有更新博客文章了。不过浏览博客的人数每天依然还是有上百位,当然,我运行这个博客的目的其实也并不是为了给人看,更多的是为了继续维护自己的这个 django 项目,同时用博客的形式来记录一些自己学到的东西,就当作自己留给自己的笔记吧!
前几天静下来把之前一直想改的东西改了一下,也是很多人跟我提到过的一些需求,现在就在这里发一篇文章说一下目前这个博客项目的一些现状以及今后的打算。
进入新的公司,从公司的项目中我学到了很多比较专业和规范的代码管理和项目管理的规范,虽然我不可能把这么个小项目做的多么专业化,但是也在尝试做一些调整来更好的管理项目,于是,我把博客项目分成了多个版本。
最开始我博客的的 DEBUG 开关是放在 base_settings.py 文件中的,也就是那个自己需要单独创建的配置文件,后来被我改成了自动识别,如果识别系统是 windows 就自动打开 debug 模式,作为测试环境,而如果识别系统是 Linux 就关闭debug 模式,作为生产环境。现在我把这个进一步完善,改成了三种模式,可以选择按照系统自动识别,也可以强制开始或者关闭,具体的代码是:
if MY_DEBUG == 0:
DEBUG = False
elif MY_DEBUG == 1:
DEBUG = True
else:
# 非强制开启DEBUG模式:如果运行环境是Windows就开启DEBUG,否则关闭
if platform.system() == 'Windows':
DEBUG = True
else:
DEBUG = False
之所以改成这样,是因为有些人可能直接使用的 Linux 作为开发环境,所以还是手动选择比较方便,这算是一个小改动吧,但是也比较有用。
我的博客有一个在线工具和 API 接口,这两个一直作为附加功能放到导航栏和后台,但是很多人问过我怎么去掉这两个功能,因为他不需要。那么现在我可以告诉你,你现在可以很方便的选择是否开启这两个功能了,就如同一个开关一样那么简单。如下:
# 是否开始[在线工具]应用
TOOL_FLAG = True
# 是否开启[API]应用
API_FLAG = False
是不是很简单,只要设置这个开关,就可以在前端和后端都不显示这两个功能,但是功能依然存在,只要自己需求,随时可以切换回来。这个改动其实我很早就想到了,而且也不难,主要就是用到的 django 的上下文管理器,这个管理器相当于给项目设置了一些全局变量:
from django.conf import settings
# 自定义上下文管理器
def settings_info(request):
return {
'site_end_title':settings.SITE_END_TITLE,
'site_description':settings.SITE_DESCRIPTION,
'site_keywords':settings.SITE_KEYWORDS,
'tool_flag':settings.TOOL_FLAG,
'api_flag':settings.API_FLAG,
}
当然,设置全局变量只是基本的改动点,具体改动的地方有兴趣可以去看项目的代码。
我的博客项目目前有4个主要的分支,这次的功能修改在这所有的版本很分支上都是通用的,所有各个分支目前是没有功能上的差异。各个分支的作用和功能如下:
我的博客虽然没有设置推送,但是如果项目有更新,其实大家也能够知道,如何知道呢?那当然是去看我的 Timeline 页面啊,我只要更新了博客的功能都会在这个页面更新说明的。
在开博和开源代码之后,有很多人都问过我一些关于博客的使用的问题,但是有的人提问的问题我真的懒得去回复,因为我觉得没必要,比如有的问题明明自己花点时间就能找到答案,有的人非要提交一个评论来重复问我,最后发现是自己没有看文章。
所以,我觉得提问之前的思考是必须的,遇到问题,不要马上想到的是找人帮忙,而是应该自己先去找资料,毕竟很多问题其他人已经遇到过网上解决的办法一大堆,没必要拖着去问别人。
百度和谷歌知道的肯定比我多的多,请相信这个真理!
首先,我把问题分成几种不同的类型:
更新于 2019-02-18:博客的分支已经做出重新调整,具体可以看我 Github 上的说明,以及对应的分支的介绍和使用方法。之后的分支基本不会再变动,除非更改目前未知的 BUG。
最新运行指导:https://github.com/Hopetree/izone/wiki
版权声明:如无特殊说明,文章均为本站原创,转载请注明出处 本文链接:https://cloud.tencent.com/developer/article/2123458 许可协议:署名-非商业性使用 4.0 国际许可协议