将tinyMCE嵌入到django flatpage中 [英] Embedding tinyMCE in django flatpage

查看:123
本文介绍了将tinyMCE嵌入到django flatpage中的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用 django-tinymce 。我想知道如何将它嵌入到管理面板中的平面图中。

I'm using django-tinymce. I'd like to know how to embed it in a flatpage in admin panel.

从项目的自述文件中:

在您的项目的settings.py中将tinymce添加到INSTALLED_APPS:

Add tinymce to INSTALLED_APPS in settings.py for your project:

INSTALLED_APPS = (
    ...
    'tinymce',
)

将tinymce.urls添加到urls.py为您的项目:

Add tinymce.urls to urls.py for your project:

urlpatterns = patterns('',
    ...
    (r'^tinymce/', include('tinymce.urls')),
)

我的平板网址:

url(r'^pages/', include('django.contrib.flatpages.urls')),


推荐答案

您需要覆盖内容字段的小部件。要执行此操作:

you need to override the widget for the content field. To do this:


  1. FlatpageForm ModelForm扩展为 PageForm

  2. 扩展 FlatPageAdmin 以使用新的 PageForm

  1. extend the FlatpageForm ModelForm as PageForm
  2. extend the FlatPageAdmin to use the new PageForm

代码示例:

from django.contrib.flatpages.admin import FlatpageForm, FlatPageAdmin
from django.contrib.flatpages.models import FlatPage
## OOPS this is a custom widget that works for initializing
## tinymce instances on stacked and tabular inlines
## for flatpages, just use the tinymce packaged one.
#from content.widgets import TinyMCE 
from tinymce.widgets import TinyMCE


class PageForm(FlatpageForm):

    class Meta:
        model = FlatPage
        widgets = {
            'content' : TinyMCE(attrs={'cols': 100, 'rows': 15}),
        }


class PageAdmin(FlatPageAdmin):
    """
    Page Admin
    """
    form = PageForm

然后取消注册旧的单页管理员并重新注册新帐户

then unregister the old flatpage admin and reregister the new one

admin.site.unregister(FlatPage)
admin.site.register(FlatPage, PageAdmin)

这篇关于将tinyMCE嵌入到django flatpage中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆