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 997594e371 Logger creation simplified 3 週之前
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 3 週之前
__init__.py Module parameters centralised in parameter.py 3 週之前
admin.py Initial mycreole implementation 4 年之前
apps.py Initial mycreole implementation 4 年之前
context.py Logger creation simplified 3 週之前
help.py Make mycreole independent from patt 3 週之前
models.py Initial mycreole implementation 4 年之前
parameter.py Module parameters centralised in parameter.py 3 週之前
tests.py Initial mycreole implementation 4 年之前
urls.py Initial Attachment Management 3 年之前
views.py Logger creation simplified 3 週之前

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