定制
看到 设置 获取可用于配置django-wiki的设置。下面列出了自定义django-wiki以供您使用的其他方法。
模板
django-wiki可以通过提供您自己的模板进行定制。
django-wiki使用的所有模板继承自 wiki/base.html
,它反过来简单地继承自 wiki/base_site.html
(不添加任何内容)。 wiki/base_site.html
提供了完整的HTML页面,但提供了许多您可能想要覆盖的块。最有用的是:
wiki_site_title
wiki_header_branding
wiki_header_navlinks
这些可以被覆盖,以在页面的顶部栏以及浏览器窗口标题中提供您自己的品牌和链接。的 wiki/base_site.html
模板使用Bootstrap 3,因此下面的示例展示了如何在实践中使用它,假设您想要一个指向主页的链接和一个指向维基的链接。添加以下内容作为 wiki/base.html
在你的某个地方 TEMPLATE_DIRS
:
{% extends "wiki/base_site.html" %}
{% block wiki_site_title %} - Wiki{% endblock %}
{% block wiki_header_branding %}
<a class="navbar-brand" href="/">Your brand</a>
{% endblock %}
{% block wiki_header_navlinks %}
<ul class="nav navbar-nav">
<li class="active"><a href="{% url 'wiki:root' %}">Wiki</a></li>
</ul>
{% endblock %}
网站
你可以覆盖默认的django-wiki wiki.sites.site
网址/查看您自己的网站实现:通过设置 default_site
习俗属性 AppConfig
到任何一个的虚线导入路径 WikiSite
子类或返回站点实例的可调用对象。
# myproject/sites.py
from wiki.sites import WikiSite
class MyWikiSite(admin.WikiSite):
...
# myproject/apps.py
from wiki.apps import WikiConfig
class MyWikiConfig(WikiConfig):
default_site = 'myproject.sites.MyWikiSite'
# myproject/settings.py
INSTALLED_APPS = [
...
'myproject.apps.MyWikiConfig', # replaces 'wiki.apps.WikiConfig'
...
]