Django Library Mycreole
您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符
Dirk Alders e093c48e91 Added kwargs to extern navigation method, instead of passing a modified rel_path 2 个月前
migrations Initial mycreole implementation 4 年前
templates/mycreole Initial Attachment Management 3 年前
templatetags Initial mycreole implementation 4 年前
.gitignore Initial commit 4 年前
LICENSE Initial commit 4 年前
README.md Added kwargs to extern navigation method, instead of passing a modified rel_path 2 个月前
__init__.py Module parameters centralised in parameter.py 2 个月前
admin.py Initial mycreole implementation 4 年前
apps.py Initial mycreole implementation 4 年前
context.py Added kwargs to extern navigation method, instead of passing a modified rel_path 2 个月前
help.py Make mycreole independent from patt 2 个月前
models.py Initial mycreole implementation 4 年前
parameter.py Module parameters centralised in parameter.py 2 个月前
tests.py Initial mycreole implementation 4 年前
urls.py Initial Attachment Management 3 年前
views.py Module parameters centralised in parameter.py 2 个月前

README.md

mycreole

With the django library mycreole, you are abel to use the creole language to create html output in your django application.

Requirements

You need to ensure that python-mycreole is available in your python environment.

Integration

Clone the library in your django application.

Configurations in your settings.py

Add the following line to the list INSTALLED_APPS:

'mycreole.apps.MycreoleConfig',

Parameter

All parameters can be added in the django settings.py or in a config.py in the root django folder. The definitions in the config.py will be used before the definitions in settings.py.

MYCREOLE_ROOT

Define the folder, where the attachments are stored with the following line:

MYCREOLE_ROOT = os.path.join(BASE_DIR, 'data', 'pages')

MYCREOLE_ATTACHMENT_ACCESS

Define the methods to grant or deny the access to the attachments by:

MYCREOLE_ATTACHMENT_ACCESS = {
    'read': 'pages.access.read_attachment',
    'modify': 'pages.access.modify_attachment',
}

MYCREOLE_BAR

Define the methods to extend the navigationbar and menubar by this statement:

MYCREOLE_BAR = {
    'navibar': 'pages.context.navigationbar',
    'menubar': 'pages.context.menubar',
}

Usage

Creole help page

In this example, you see a method in views.py which returns a creole help page:

from django.conf import settings
from django.http import HttpResponse
import mycreole
import os


def help_on_creole(request):
    attachment_path = os.path.join(settings.MYCREOLE_ROOT, 'creole_help_page')
    html = mycreole.render(request, creole.help.MYCREOLE_HELP, self.attachment_path)

Usage of next_achor

Defines the additional html anchor, which will be used after an upload.

Usage of macros

You can give a dictonary as macros parameter to the render method, to define your own macros. Here an example of such a dict:

macros={
    'mymacro': method_to_be_called,
}