Mezzanine入门

安装完Mezzanine后,其目录结构如下图:(templates目录是我手工建立的,不知道为何初始结构没有此目录)

上面的目录中,deploy下是生产环境部署时的一些配置文件,暂且略过。requirements目录要放置mezzanine编译所必须的文件,暂时也不管它。

重要的目录static下是一推图片,你可以在默认网站的gallery页面下看到这些图片~~除此之外,别的没有了。目录之外的manage,settings,urls等文件和django一样的用法。那个dev.db文件应该是我们刚才创建的数据库,如果你查看一下settings的代码就会发现,我们还没有配置外部数据库,所以目前还是使用的django的内部数据库。

一堆文件,似乎没有一个我们可以改的,那么如果我想要修改那个难看的默认主页怎么办?凉拌~~~

在项目目录下,执行如下命令:

python manage.py collectstatic
python manage.py collecttemplates

之后你就会发现在static下和templates下多了很多文件,如下图,现在,我们就可以定制我们自己的主页了。

github上,有一些现成的模板可以使用,地址:https://github.com/renyi/mezzanine-themes

下载下来后,将其中的static和templates的文件分别复制到项目的对应目录覆盖原文件,你就可以看到修改后的主页页面了。

在Mezzanine的文档中,提到了定制话页面模板,可以采用创建apps的方式,我们也来尝试一下这种方法:

首先在项目根目录下增加一个目录apps,用来存放项目中所有的app,这里说明一下,如果使用django的命令,python manage.py startapp 命令,只能在根目录下创建app,但是如果项目的app很多的话,都在根目录下会很乱,所以我希望app都放在apps这个目录下进行管理,这样的话似乎这个startapp命令就不好使了,也没关系,反正创建出来的文件都是空的,手工建立也没有任何问题。

在apps下建立一个mytheme目录,然后删除static和templates目录下的所有文件,恢复成初始状态。将刚才下载的themes文件中的任意一个目录下的static,templates和index等文件copy到mytheme目录下,如图所示:

然后在manage.py文件中,增加如下设置:

sys.path.insert(0, os.path.join(PROJECT_ROOT, 'apps'))

#参考文章:http://www.cnblogs.com/holbrook/archive/2012/02/25/2368231.html

这样系统就可以找到我们增加的App了,最后在settings中增加app的名字:

NSTALLED_APPS = (
    "mytheme",  #注意theme的app一定要放在第一个位置
    "django.contrib.admin",
    ……………………………………

重启服务器,刷新页面,就可以看到页面又发生了变化。

原文地址:https://www.cnblogs.com/jerry2005/p/2767146.html