我已经有一个现有的Django网站。我添加了一个新的网址'/ blog /',我希望有一个Mezzanine博客。如果可以将Mezzanine安装为现有Django站点中的应用程序而不是独立的博客应用程序。
答案 0 :(得分:13)
如果你像我一样,你会发现常见问题解答中非常缺乏如何让Mezzanine作为应用程序运行的描述。所以这就是我所做的(经过一段痛苦的半天黑客攻击之后)将其整合(有点):
cd
到软件包并运行mezzanine命令创建一个新应用程序(mezzanine-project <project name>
),让我们假设您使用名称blog
作为<project_name>
}。local_settings.py
或settings.py
文件中,设置DATABASES
dict以使用您项目的数据库。createdb
文件manage.py
命令
醇>
现在是时候开始讨价还价了:
blog
添加到INSTALLED_APPS
PACKAGE_NAME_FILEBROWSER = "filebrowser_safe"
PACKAGE_NAME_GRAPPELLI = "grappelli_safe"
GRAPPELLI_INSTALLED = False
ADMIN_REMOVAL = []
RATINGS_RANGE = range(1, 5)
TESTING = False
BLOG_SLUG = ''
COMMENTS_UNAPPROVED_VISIBLE = True
COMMENTS_REMOVED_VISIBLE = False
COMMENTS_DEFAULT_APPROVED = True
COMMENTS_NOTIFICATION_EMAILS = ",".join(ALL_EMAILS)
COMMENT_FILTER = None
....
"mezzanine.boot",
"mezzanine.conf",
"mezzanine.core",
"mezzanine.generic",
"mezzanine.blog",
"mezzanine.forms",
"mezzanine.pages",
"mezzanine.galleries",
"mezzanine.twitter",
....
mezzanine
的模板文件夹的引用添加到TEMPLATE_DIRS
元组
os.path.join(BASE_PARENT, '<path to mezzanine>/mezzanine/mezzanine'),
os.path.join(BASE_PARENT, '<path to mezzanine>/mezzanine/mezzanine/blog/templates'),
extends
路径,最明显的是&#34; blog_post_list.html&#34;它只是扩展base.html
,而是希望它扩展夹层特定的base
文件。因此,请转到该文件并将{% extends "base.html" %}
替换为{% extends "core/templates/base.html" %}
。答案 1 :(得分:5)
这在常见问题解答中有所介绍:
TLDR:Mezzanine添加了一些设置,应用程序,中间件和上下文处理器,所有这些都在其默认settings.py文件中定义 - 您只需根据需要提取足够的内容。