VZ_Wiki is a Django powered wiki app.
sudo easy_install django_vz_wiki
Add the following to urls.py
(r'^wiki/', include('vz_wiki.urls')),
Add the following to INSTALED_APPS
'django_vz_wiki',
Be sure to uncomment the the egg based templated loader in TEMPLATE_LOADERS
django.template.loaders.eggs.load_template_source
All wiki templates have the following:
{% extends "base.html" %}
The block tags match the suggested best practices by Lincoln Loop
Template blocks include:
- title - full page title
- extra_head - for extra css/javascript
- body - wraps everything inside body tag
- content_title - title for wiki page
- content - wiki page contents
- block vz_wiki_page_menu - this is required for page options, it should be wrapped
inside
<ul></ul>
.
You can add default allowed tags. By adding WIKI_ALLOWED_TAGS to your settings file. The setting should be in form 'tag2:attr1:attr2 tag2:attr1 tag3', where tags are allowed HTML tags, and attrs are the allowed attributes for that tag. Default is an empty string.
You can also change the default Wiki page link base (/wiki) by adding WIKI_BASE to your settings file.
First, include wiki_tags template tags.
{% load markup wiki_tags %}
Second, link to the desired wiki page by putting something like the following inside your text:
Blah blah blah [[title of the wiki page]]
Finally, add the wiki_link filter like this:
{{ latest_revision.body|sanitize|wiki_link|markdown }}
You can add:
{% include "vz_wiki/wiki_menu.html" %}
This will add:
<ul>
<li><a href="{% url page_list %}" title="page list">Page List</a></li>
{% if perms.page.can_add %}
<li><a href="{% url create_page %}" title="create a page">Create a Page</a></li>
{% endif %}
</ul>
You can also do this manually.
Django Haystack Integration
Honestly, I'm still wrapping my head around Haystack. It's pretty awesome, just has a bit of a learning curve for me. That being said, I've added some basic integration.
If your search index is setup for auto discover, your project will find vz_wiki.search_indexes.