Django Library Mycreole
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Dirk Alders e093c48e91 Added kwargs to extern navigation method, instead of passing a modified rel_path 3 tygodni temu
migrations Initial mycreole implementation 4 lat temu
templates/mycreole Initial Attachment Management 3 lat temu
templatetags Initial mycreole implementation 4 lat temu
.gitignore Initial commit 4 lat temu
LICENSE Initial commit 4 lat temu
README.md Added kwargs to extern navigation method, instead of passing a modified rel_path 3 tygodni temu
__init__.py Module parameters centralised in parameter.py 3 tygodni temu
admin.py Initial mycreole implementation 4 lat temu
apps.py Initial mycreole implementation 4 lat temu
context.py Added kwargs to extern navigation method, instead of passing a modified rel_path 3 tygodni temu
help.py Make mycreole independent from patt 3 tygodni temu
models.py Initial mycreole implementation 4 lat temu
parameter.py Module parameters centralised in parameter.py 3 tygodni temu
tests.py Initial mycreole implementation 4 lat temu
urls.py Initial Attachment Management 3 lat temu
views.py Module parameters centralised in parameter.py 3 tygodni temu

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,
}