Dirk Alders 68e89f85a1 Module parameters centralised in parameter.py | 2 месяцев назад | |
---|---|---|
migrations | 4 лет назад | |
templates/mycreole | 3 лет назад | |
templatetags | 4 лет назад | |
.gitignore | 4 лет назад | |
LICENSE | 4 лет назад | |
README.md | 2 месяцев назад | |
__init__.py | 2 месяцев назад | |
admin.py | 4 лет назад | |
apps.py | 4 лет назад | |
context.py | 2 месяцев назад | |
help.py | 2 месяцев назад | |
models.py | 4 лет назад | |
parameter.py | 2 месяцев назад | |
tests.py | 4 лет назад | |
urls.py | 3 лет назад | |
views.py | 2 месяцев назад |
With the django library mycreole, you are abel to use the creole language to create html output in your django application.
Clone the library in your django application.
Add the following line to the list INSTALLED_APPS
:
'mycreole.apps.MycreoleConfig',
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
.
Define the folder, where the attachments are stored with the following line:
MYCREOLE_ROOT = os.path.join(BASE_DIR, 'data', 'pages')
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',
}
Define the methods to extend the navigationbar and menubar by this statement:
MYCREOLE_BAR = {
'navibar': 'pages.context.navigationbar',
'menubar': 'pages.context.menubar',
}
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)
Defines the additional html anchor, which will be used after an upload.
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,
}