Django Library Mycreole
Du kannst nicht mehr als 25 Themen auswählen Themen müssen mit entweder einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.
Dirk Alders e093c48e91 Added kwargs to extern navigation method, instead of passing a modified rel_path vor 2 Monaten
migrations Initial mycreole implementation vor 4 Jahren
templates/mycreole Initial Attachment Management vor 3 Jahren
templatetags Initial mycreole implementation vor 4 Jahren
.gitignore Initial commit vor 4 Jahren
LICENSE Initial commit vor 4 Jahren
README.md Added kwargs to extern navigation method, instead of passing a modified rel_path vor 2 Monaten
__init__.py Module parameters centralised in parameter.py vor 2 Monaten
admin.py Initial mycreole implementation vor 4 Jahren
apps.py Initial mycreole implementation vor 4 Jahren
context.py Added kwargs to extern navigation method, instead of passing a modified rel_path vor 2 Monaten
help.py Make mycreole independent from patt vor 2 Monaten
models.py Initial mycreole implementation vor 4 Jahren
parameter.py Module parameters centralised in parameter.py vor 2 Monaten
tests.py Initial mycreole implementation vor 4 Jahren
urls.py Initial Attachment Management vor 3 Jahren
views.py Module parameters centralised in parameter.py vor 2 Monaten

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