WMD in Django Admin?

怎甘沉沦 提交于 2019-12-30 02:10:09

问题


I know how to use WMD and other such javascript editors in regular django forms using widget=. However, how do I use WMD for text fields in the Django admin? On top of that, how do I use it for the content field on contrib.flatpages in the admin?

Also, I think I might like to use the StackOverflow fork of WMD, so I would like any special instructions for that, if necessary.

I know how to use the markdown filter in the templates, so that part is ok. I just need to get the editor to show up and work in the admin interface.


回答1:


I gave up on trying to use WMD. Instead, I used Markitup! As of the time of this posting, the current version of WMD is just not up to snuff. The StackOverflow fork of it is better, but is missing many features I want.

Instead, I decided to use Markitup! It has a Django reusable app. It also integrates very well with the existing django.contrib.markup template filters.

django-markitup

I also found a site that shows how to use it for flatpages without having to edit the admin templates.

extending admin forms in django




回答2:


To insert WMD, or any other cool JS, into the Django Admin pages, follow the instructions on overriding the admin templates in the Django docs, right here -- worst case, you'll copy and edit the existing Django templates to add your required JS functionality, and use those instructions to make sure your modified templates are used instead of Django's default ones, but almost always you can do better than this, as you'll see in those instructions.




回答3:


This isn't a direct answer to your question, but it might help.

It seems to be quite common to add the TinyMCE WYSIWYG editor to django. If you search for instructions on how to add TinyMCE to the Django admin, you might be able to adapt the method for WMD.

In the book Practical Django Projects, Second Edition, the author embeds TinyMCE in the flatpages admin. You can download the code from a Bitbucket repository, and see how it's done (look at cms/templates/admin/). Alternatively, you could try this guide on the Django website.


+1 for the question. I would also like to write flatpages in markdown. However I think the best method for using markdown is to

  1. have two fields, say content and content_html, and store the original markdown in content.
  2. When the object is saved, convert the markdown to html and store it in content_html.

This means you avoid converting to html in the template every time the page is viewed. However I don't know an elegant way to extend contrib.flatpages by 'adding' an extra field.




回答4:


Check this one http://fi.am/entry/adding-a-simple-wysiwym-markdown-editor-to-your-mo/

This is much better solution.

So simple, and clear.



来源:https://stackoverflow.com/questions/1258138/wmd-in-django-admin

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!