Skip to main content

django-markup-mixin

A simple django reusable application to provide markup control over a field in a model. Right now this is pretty hacked together, but should become more robust over time. Either way, I’ve found it quite useful in many places already.

On big benefit? You can provide both a markup field, and a rendered content field, meaning expensive per-template markup rendering operations can be relegated to only the simplest of text areas. Big content areas can be re-rendered on each model save.

Installation

In three easy steps!

  1. Place ‘markup-mixin’ in your installed apps.

  2. Add:

    from markup-mixin.models import MarkupMixin

  3. Make sure your model inherits the mixin:

    class YourModel(MarkupMixin):

    …

  4. Set the markup field options on your model:

    def MarkupOptions:

    source_field = <your markup content field> rendered_field = <your rendered content field>

That’s it. One major caveat, because of the hacky nature of this project, you must place MarkupMixin at the front of your model inheritance list! This should be fixed eventually, but right now it has something to do with how the model’s save() function is overridden.

Usage

With the steps above taken, managing your marked up items is fairly straightforward:

>>> obj = YourModel.objects.get(pk=1)
>>> obj.content
u'This is a markdown **formated** text area.'
>>> obj.rendered_content
u'<p>This is a markdown <strong>formated</formated> text area.</p>'

Future

Figure out why it must come first in the inheritance list and perhaps even add support for multiple markup rendered fields.

Metadata

Release files for django-markup-mixin 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for django-markup-mixin 0.1.0
File Size Uploaded
django-markup-mixin-0.1.0.tar.gz 3.4 kB Details

Release files / django-markup-mixin-0.1.0.tar.gz

Download URL django-markup-mixin-0.1.0.tar.gz
Size 3.4 kB
Tags Source
SHA-256 checksum
How to use checksums
feb6d0d6538877198d55bc5625961cbd259f4ef3d892a33936736ffa2e7a9ed0
BLAKE2b-256 checksum
How to use checksums
be47ea14f7e8baea4ad7972849bef5155527ce24d1c43f22c734a239448c4d5e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

0.1.0 This release

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page