2013-02-13 12 views

cevap

0
from django.db.models import Field 
from django.forms import Textarea 
from settings import MEDIA_URL 

class WidgetWYSIWYG(Textarea): 
    def __init__(self, *args, **kwargs): 
     super(WidgetWYSIWYG, self).__init__(attrs={'class': 'wysiwygEditor vLargeTextField'}, *args, **kwargs) 
    class Media: 
     js = (
      MEDIA_URL+'common/tiny_mce/tiny_mce.js', 
      MEDIA_URL+'common/filebrowser/js/TinyMCEAdmin.js', 
      ) 

class WYSIWYGField(Field): 
    def get_internal_type(self): 
     return "TextField" 

    def formfield(self, **kwargs): 
     defaults = {'widget': WidgetWYSIWYG} 
     defaults.update(kwargs) 
     return super(WYSIWYGField, self).formfield(**defaults) 

from django.contrib import admin 
from wysiwyg import WidgetWYSIWYG 

from django.db import models 
from django.contrib.flatpages.models import FlatPage 
from django.contrib.flatpages.admin import FlatPageAdmin as FlatPageAdminOld 

class FlatPageAdmin(FlatPageAdminOld): 
    formfield_overrides = { 
     models.TextField: {'widget': WidgetWYSIWYG}, 
    } 

admin.site.unregister(FlatPage) 
admin.site.register(FlatPage, FlatPageAdmin) 
8

Sadece admin.py aşağıdaki kodu ile flatpages uygulamaya django-CKEditor bağlamak:

from django.contrib import admin 
from django.contrib.flatpages.admin import FlatPageAdmin 
from django.contrib.flatpages.models import FlatPage 
from django.db import models 

from cked.widgets import CKEditorWidget 

class FlatPageCustom(FlatPageAdmin): 
    formfield_overrides = { 
     models.TextField: {'widget': CKEditorWidget} 
    } 

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

Çalışıyor!

+0

, Django 1.6 – kissgyorgy

+0

ile birlikte çalışmıyor Ancak güncelleştirilmiş sürümde çalışıyor: https://github.com/riklaunim/django-ckeditor Bahşiş için teşekkürler! – kissgyorgy

+5

Hangi admin.py dosyasını eklemek zorundayım? – Spoutnik16

İlgili konular