Skip to main content

Django markdown support and wysiwyg.

Project description

Django markdown is django application that allows use markdown wysiwyg in flatpages, admin forms and other forms. Documentaton available at pypi or github.

Build Status Coverals Version Downloads License Donate

Requirements

  • python >= 2.7

  • django >= 1.5

  • markdown

Installation

Django markdown should be installed using pip:

pip install django-markdown

Setup

  • Add ‘django_markdown’ to INSTALLED_APPS

    INSTALLED_APPS += ( 'django_markdown', )
  • Add django_markdown urls to base urls

    url('^markdown/', include( 'django_markdown.urls')),

Use django_markdown

  1. Models:

    from django_markdown.models import MarkdownField
    class MyModel(models.Model):
        content = MarkdownField()
  2. Custom forms:

    from django_markdown.fields import MarkdownFormField
    from django_markdown.widgets import MarkdownWidget
    class MyCustomForm(forms.Form):
        content = forms.CharField(widget=MarkdownWidget())
        content2 = MarkdownFormField()
  3. Custom admins:

    from django_markdown.admin import MarkdownModelAdmin
    admin.site.register(MyModel, MarkdownModelAdmin)
  4. Admin Overrides: (If you don’t want to subclass package ModelAdmin’s)

    from django.contrib import admin
    
    class YourModelAdmin(admin.ModelAdmin):
        formfield_overrides = {MarkdownField: {'widget': AdminMarkdownWidget}}
  5. Flatpages:

    # in your project main urls
    from django_markdown import flatpages
    ...
    # Django admin
    admin.autodiscover()
    flatpages.register()
    urlpatterns += [ url(r'^admin/', include(admin.site.urls)), ]
  6. Template tags:

    <textarea name="test" id="new"></textarea>
    {% markdown_editor "#new" %}
    {% markdown_media %}

Settings

MARKDOWN_EDITOR_SETTINGS - holds the extra parameters set to be passed to textarea.markItUp()

MARKDOWN_EDITOR_SKIN - skin option, default value is markitup

Example: settings.py

MARKDOWN_EDITOR_SKIN = 'simple'

MARKDOWN_EXTENSIONS - optional list of extensions passed to Markdown, discussed at https://pythonhosted.org/Markdown/extensions/index.html#officially-supported-extensions

Example: settings.py

MARKDOWN_EXTENSIONS = ['extra']

MARKDOWN_EXTENSION_CONFIGS - Configure extensions, discussed at https://pythonhosted.org/Markdown/reference.html#extension_configs

MARKDOWN_PREVIEW_TEMPLATE - Template for preview a markdown. By default django_markdown/preview.css

MARKDOWN_STYLE - path to preview styles. By default django_markdown/preview.css

MARKDOWN_SET_PATH - path to folder with sets. By default django_markdown/sets

MARKDOWN_SET_NAME - name for current set. By default markdown.

MARKDOWN_PROTECT_PREVIEW - protect preview url for staff only

Examples

Execute make run in sources directory. Open http://127.0.0.1:8000 in your browser. For admin access use ‘root:root’ credentials.

Changes

Make sure you`ve read the following document if you are upgrading from previous versions:

http://packages.python.org/django-markdown/changes.html

Bug tracker

If you have any suggestions, bug reports or annoyances please report them to the issue tracker at https://github.com/klen/django_markdown/issues

Contributing

Development of django-markdown happens at github: https://github.com/klen/django_markdown

Contributors

License

Licensed under a GNU lesser general public license.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django-markdown-0.8.3.tar.gz (68.6 kB view details)

Uploaded Source

Built Distribution

django_markdown-0.8.3-py2.py3-none-any.whl (97.0 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file django-markdown-0.8.3.tar.gz.

File metadata

File hashes

Hashes for django-markdown-0.8.3.tar.gz
Algorithm Hash digest
SHA256 9e8f2ff08e3731234c944101a32b6d7e8012cf70db48c1ba34f51b88dbd44c74
MD5 6036e0dbc1980bb033b14fd5b32cf01b
BLAKE2b-256 3ab9f0d985d987e5c04d0b1ae15fe2dc9c110dccd173661f55b77b37f09e27ef

See more details on using hashes here.

File details

Details for the file django_markdown-0.8.3-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for django_markdown-0.8.3-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 2afaee72aee6be3ece9387dca6730b5a8366ff88873584ea1f6d9e3b19c0c791
MD5 6172d8f8ed23246845b00807f33cf0d0
BLAKE2b-256 025614862005caec2d92ae0dfd848aa70c7bb1d8d3a984a5af6ad8ae163e7a7c

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page