django-markdown-app
django-markdown-app copied to clipboard
Django markdown support and wysiwyg.
Django-Markdown v. 0.9.7
.. _description:
Django markdown is django application that allows use markdown_ wysiwyg in flatpages, admin forms and other forms. Documentaton available at readthedocs_ or github_.
.. _badges:
.. image:: https://circleci.com/gh/sv0/django-markdown-app.svg?style=svg :target: https://circleci.com/gh/sv0/django-markdown-app
.. image:: https://coveralls.io/repos/github/sv0/django-markdown-app/badge.svg?branch=master :target: https://coveralls.io/github/sv0/django-markdown-app?branch=master :alt: Coverals
.. image:: http://img.shields.io/pypi/v/django-markdown-app.svg?style=flat-square :target: https://pypi.python.org/pypi/django-markdown-app :alt: Version
.. image:: https://img.shields.io/badge/license-LGPL-blue.svg :target: http://www.gnu.org/copyleft/lesser.html :alt: License
.. contents::
.. _requirements:
Requirements
- django >= 2.0, <3.0
- markdown >= 2.6.11
.. _installation:
Installation
Django markdown should be installed using pip: ::
pip install django-markdown-app
Version compatibility
============== =================== Django version django-markdown-app ============== =================== 2.0 - 2.2 0.9.7 2.0 - 2.1 0.9.6 1.8 or later 0.9.3.1 prior to 1.8 0.8.5.1 ============== ===================
Setup
.. note:: 'django_markdown' require 'django.contrib.staticfiles' in INSTALLED_APPS
-
Add 'django_markdown' to INSTALLED_APPS ::
INSTALLED_APPS += ( 'django_markdown', )
-
Add django_markdown urls to base urls ::
path('markdown/', include( 'django_markdown.urls')),
Use django_markdown
#) Models: ::
from django_markdown.models import MarkdownField
class MyModel(models.Model):
content = MarkdownField()
#) 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()
#) Custom admins: ::
from django_markdown.admin import MarkdownModelAdmin
admin.site.register(MyModel, MarkdownModelAdmin)
#) 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}}
#) Flatpages: ::
# in your project main urls
from django_markdown import flatpages
...
# Django admin
admin.autodiscover()
flatpages.register()
urlpatterns += [ path(r'admin/', admin.site.urls), ]
#) 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.
Officially supported extensions could be found at https://python-markdown.github.io/extensions/#officially-supported-extensions
Example: settings.py ::
MARKDOWN_EXTENSIONS = ['extra']
MARKDOWN_EXTENSION_CONFIGS - configure extensions
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 changes_ document if you are upgrading from previous version.
Bug tracker
If you have any suggestions, bug reports or annoyances please report them to the issue tracker at https://github.com/sv0/django-markdown-app/issues
Contributing
Development of django-markdown happens at github: https://github.com/sv0/django-markdown-app
All changes should include tests, pass flake8_ and pass build on the TravisCI_
Contributors
-
klen_ (Kirill Klenov)
-
yavorskiy_ (Sergii Iavorskyi)
-
contributors_ (Other contributors)
License
Licensed under a GNU lesser general public license_.
Copyright
Copyright (c) 2011 Kirill Klenov ([email protected])
Markitup_: (c) 2008 Jay Salvat http://markitup.jaysalvat.com/
.. _GNU lesser general public license: https://www.gnu.org/copyleft/lesser.html .. _readthedocs: https://django-markdown-app.readthedocs.io .. _Markitup: https://markitup.jaysalvat.com .. _github: https://github.com/sv0/django-markdown-app .. _klen: https://github.com/klen .. _yavorskiy: https://github.com/yavorskiy .. _markdown: https://python-markdown.github.io .. _changes: https://django-markdown-app.readthedocs.io/en/latest/changes.html .. _TravisCI: https://travis-ci.org/sv0/django-markdown-app .. _flake8: https://pypi.org/project/flake8 .. _contributors: CONTRIBUTORS.rst