飞仙锅建站日志第1篇-初识django-blog-zinnia

飞仙锅网站上线多天,现在得空整理一下“建站日志”专题。

这一篇主要讲一下,在经过一周左右的预研和技术选型后,如何落下的网站的第一行代码。

技术选型

我的网站采用Python的Django框架搭建,Django是一个开放源代码的Web应用框架,由Python写成。采用了MVC的软件设计模式,可以比较方便开发网站,而且该框架有一个方便的后台管理功能。而django-blog-zinnia是基于django写的blog开源框架,在项目中以app的形式加到主项目。

先说一下开发和运行环境,这个很重要,技术同学们很容易忽略掉这一点,所以大家切记玩开源,版本兼容性可能花掉你大量的调试时间,往往会为了一个莫名奇妙的BUG,调上好几天,最后发现更换一下组件版本就搞定。总之都是泪,写这一段时哗哗往下掉啊。

python v3.7
django v3.0
zinnia v0.20dev
mysql  v8.0
开发环境:macOS catalina 10.15.4
生产环境:centos7.7 64位

由于mac OS是基于UNIX开发的,所以操作命令使用、文件结构、文件路径等方面和生产服务器Centos的linux操作习惯一致,建议使用mac os做为网站开发主要操作系统。

第一行代码

mac OS自带python2版本,由于python2和3并不兼容,并且开源组件所需要python版本也不一样。安装python3后,在运行命令或者在下载软件包时,最好指定python3来运行脚本,时刻提醒版本兼容这件事。

获取开源代码,用到最多的是两个下载方法,pip3和git

第一个,pip3 用于依赖包的下载与安装

最好指定版本下载,站长推荐使用django3.0版本,建站时是2021年8月,不要贪图使用最新的django版本,因为很多扩展包都只支持django1.8,有的只支持2.7以下版本。简单修改一下源码,还能支持到3.0版本,站长亲测django v3.5和好几个组件不兼容。

这就是飞仙锅站点的第一行代码:

pip3 install 'django==3.0"

第二个,git 用于下载研习代码和工程需要修改的app代码

先从github下载最新的zinnia代码,注意不要将zinnia安装成系统的egg,因为它是需要修改的代码。

git clone https://github.com/Fantomas42/django-blog-zinnia.git

我的博客项目

利用django-admin创建一个新的django工程

django-admin startproject myzinnia

将zinnia源码目录,在git下载的django-blog-zinnia目录下在的zinnia目录,复制到myzinnia下面去:

另外,需要用pip3去安装一下django-comments,mptt, tagging这个依赖包,这几个包具体用法在后续文章来讲解。

先去修改一下settings.py

#settings.py

#增加访问主机和SITE_ID
ALLOWED_HOSTS = []
SITE_ID = 1

#zinnia用到sites包,需要增加上
INSTALLED_APPS = [
..
#my code....
'django.contrib.sites',
'django_comments',
'mptt',
'tagging',
'zinnia’,
]

#其它代码
LANGUAGE_CODE = 'zh-hans'
TIME_ZONE = 'Asia/Shanghai’

STATIC_URL = '/static/'
STATICFILES_DIRS = (
    os.path.join(BASE_DIR, "static"),
)

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [
            os.path.join(BASE_DIR, "templates"),
            ],
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [
                'django.template.context_processors.debug',
                'django.template.context_processors.request',
                'django.contrib.auth.context_processors.auth',
                'django.contrib.messages.context_processors.messages',
            ],
        },
    },
]

到这里基本zinnia就可运行起来了,创建一个管理员账号

django-admin createsuperuser feixianguo

启动django server

python3 manage.py runserver

浏览器访问http://127.0.0.1:8000/weblog,就可以了。这里网站根目录访问会报错,这是以后为网站增加Home Page用的,先不用去管他。

赶紧去http://127.0.0.1:8000/admin后台去添加几条博客试试吧。

到这里,是一个很好的开始,真正做好一个BLog,还有很多知识需要学习和问题需要解决.

加油吧,骚年。

评论列表

暂无评论,欢迎来抢沙发!

新的评论

清空