它是基于 Django 的 一个cms开源系统. 如果你想实现一个简单的信息发布系统, 或者公司网站, 博客系统, 那选择 Mezzanine 绝对能为你省不少力气, 下面我就带大家来看看用Mezzanine搭建一个 cms 系统有多简单。
环境搭建
我已安装pycharm,python为3.5在此基础上安装mezzanine。
$ pip install mezzanine
等待片刻安装成功,我们就可以开始创建项目了。
创建项目
根据官网的提示,只需要下面几行命令即可创建
# 创建项目
$ mezzanine-project myproject
# 进入项目目录
$ cd myproject
# 初始化数据库
$ python manage.py createdb
# 启动项目
$ python manage.py runserver
在创建数据库时需要填写的基本信息, 例如:
- 域名和端口
- 默认的超级管理员
- Default Page
然后使用
$ python manage.py runserver
启动项目, 如果看到下面的输出, 那么大功告成
看看网站
访问首页http://127.0.0.1:8000/
访问管理员首页:
http://127.0.0.1:8000/admin
当然需要登录, 输入你前面设置的用户名密码.
在后台就可以干一些自己想干的事情了,是不是很爽呢!
修改默认数据库
大家刚刚应该注意到了,我说这个项目默认的数据库是SQLite,这个轻量级数据库对一个博客系统来说完全足够了,但有特殊需求怎么办?我如何换成mysql?
Mezzanine 默认支持4种数据库,postgresql_psycopg2 , mysql , sqlite3 和 oracle 。
接着进入 yourproject_name (我的是myproject),编辑
local_settings.py
这个注释写的很清楚了,我就不做更多的说明了。
修改完以后,重新执行:
python manage.py createdb --noinput
即可重新创建数据库(我还没有使用)。
修改默认的主页
这个主页是不是挺low的?我们的博客系统肯定不能用这么low的主页,比如我想要主页打开就是文章的列表,应该怎么办?
依旧进入到刚刚修改数据库时的那个目录,找到并编辑urls.py
文件。
看到我划线的地方了吧,去掉划直线那句代码的注释,并把最上面的 HOMEPAGE AS STATIC TEMPLATE 对应的url语句注释起来。
还没完,它提示你了,别忘了引入视图函数!
在该文件(urls.py)的开头,加上import mezzanine.blog.views
,重启项目,你就会发现你的首页变成了 Blog 。
修改配置信息
大家肯定注意到了,左上角是 Mezzanine ,我想让它显示 MyBlog ,怎么办?
还有,我想要开启一些功能,但是admin管理页面无法做到,怎么办?
肯定不会让你改源代码的,访问:http://mezzanine.jupo.org/docs/configuration.html#default-settings
比如第一个问题,就可以通过配置这个选项来解决:
在local_settings.py
文件里随便找个地方,加上:
重启服务,你就能看到变化了。
其它的配置也是类似。
去掉Search的选项
修改setting.py,加入如下的配置:
SEARCH_MODEL_CHOICES = []
建立一个新的application
python manage.py startapp theme
修改模板文件
Django is finding those templates via settings.TEMPLATE_DIRS.
一般我们很难搞清楚到底是如何收集template文件的。
Mezzanine提供了一个命令来收集所有的template文件,非常有帮助:
在setting文件中加入下面设置。
TEMPLATE_DIRS = [TEMPLATES[0]['DIRS'][0]]
python manage.py collecttemplates # 将所有template文件收集到templates目录下 (不用执行这个)
python manage.py collecttemplates -t base.html #其实我们并不需要所有的文件,其实只需一个base.html就可以了。
mv templates/ theme/ #移动到新建项目的目录中去。