Render context into template.
Project description
DjangoCMS Render Context
The plugin for the Django CMS content management system.
The plugin displays the context in the template. The context can be specified directly in JSON format.
Or the context can be used as a media file. Or the context can be loaded from a URL.
The template can be entered directly or selected from a list defined in the settings in the DJANGOCMS_RENDER_CONTEXT_TEMPLATES constant.
Supported source data formats (mimetype):
- csv (text/csv)
- json (application/json)
- yaml (application/yaml)
- xml (application/xml)
- ods (application/vnd.oasis.opendocument.spreadsheet)
Install
Install the package from pypi.org.
pip install djangocms-render-context
Add into INSTALLED_APPS in your site settings.py:
INSTALLED_APPS = [
...
"easy_thumbnails",
"filer",
"djangocms_render_context",
]
Optional urls
The following urls are not required. JavaScriptCatalog makes translations available for javascript. rcdata/ then detail from the list in context.
Add into site urls.py:
from django.conf.urls.i18n import i18n_patterns
from django.views.i18n import JavaScriptCatalog
from django.urls import path, register_converter
from django.urls.converters import StringConverter
class PackagesConverter(StringConverter):
"""JavaScriptCatalog packages converter."""
# Same as SlugConverter, but with extra '+', that is used in JavaScriptCatalog as a sepearator in list of packages.
regex = "[-a-zA-Z0-9_+]+"
register_converter(PackagesConverter, "pkg")
urlpatterns = [
...
] + i18n_patterns(
path('jsi18n/<pkg:packages>/', JavaScriptCatalog.as_view(), name='jsi18n'),
path('rcdata/', include(('djangocms_render_context.urls', 'djangocms_render_context'))),
)
The path name jsi18n can be redefined with the DJANGOCMS_RENDER_CONTEXT_JSI18N constant.
Extra settings
This value can be defined in settings.
DJANGOCMS_RENDER_CONTEXT_TEMPLATES- List of templates that the plugin can use.DJANGOCMS_RENDER_CONTEXT_DETAIL_TEMPLATES- List of templates that the detail can use.
For example:
DJANGOCMS_RENDER_CONTEXT_TEMPLATES = (
("", ""),
("plugin.html", "Plugin"),
("schedule.html", "Schedule"),
)
DJANGOCMS_RENDER_CONTEXT_DETAIL_TEMPLATES = (
("", ""),
("detail.html", "Plugin detail"),
)
DJANGOCMS_RENDER_CONTEXT_PROCESSORS- List of functions that can work with plugin context.DJANGOCMS_RENDER_CONTEXT_DETAIL_PROCESSORS- List of functions that can work with detail context.
For example:
DJANGOCMS_RENDER_CONTEXT_PROCESSORS = (
("", ""),
("mysite.utils.process_plugin", "Process plugin"),
)
DJANGOCMS_RENDER_CONTEXT_DETAIL_PROCESSORS = (
("", ""),
("mysite.utils.process_plugin_detail", "Process plugin detail"),
)
The function in mysite/utils.py:
from django.template.context import RequestContext
def process_plugin(instance: RenderContext, context: dict) -> dict:
"""Process plugin context."""
context["data"]["extra"] = "content"
return context
def process_plugin_detail(instance: RenderContext, context: RequestContext) -> RequestContext:
"""Process plugin context."""
context["detail"]["extra"] = "content"
return context
License
BSD-3-Clause
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file djangocms_render_context-1.3.2.tar.gz.
File metadata
- Download URL: djangocms_render_context-1.3.2.tar.gz
- Upload date:
- Size: 316.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
30cb1b7fc639339b8292779f3c781f1a31f5970fa1a22a023f7c865daad8132a
|
|
| MD5 |
f0590e20c7c031383316be0534a13630
|
|
| BLAKE2b-256 |
70efb8cb7f97cf982c07419108374e3f97909c6ae3943eca9c5155c2213cd76c
|
File details
Details for the file djangocms_render_context-1.3.2-py3-none-any.whl.
File metadata
- Download URL: djangocms_render_context-1.3.2-py3-none-any.whl
- Upload date:
- Size: 330.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f69b67ff9a1a17d568b5f5e90faba1aad3a557f9fd5fc634e3e391f751a87bf3
|
|
| MD5 |
f256d209b3d7450fdb5b88215c5f02fa
|
|
| BLAKE2b-256 |
32d54cdb2a05cc0fc551ce4fe55eddee0db33e9d964e4c24d22dcb5b557406d8
|