Created
November 20, 2011 01:16
-
-
Save elidickinson/1379652 to your computer and use it in GitHub Desktop.
Using CKEditor with Flatpages
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
from django.contrib import admin | |
from django.contrib.flatpages.models import FlatPage | |
# Note: we are renaming the original Admin and Form as we import them! | |
from django.contrib.flatpages.admin import FlatPageAdmin as FlatPageAdminOld | |
from django.contrib.flatpages.admin import FlatpageForm as FlatpageFormOld | |
from django import forms | |
from ckeditor.widgets import CKEditorWidget | |
class FlatpageForm(FlatpageFormOld): | |
content = forms.CharField(widget=CKEditorWidget()) | |
class Meta: | |
model = FlatPage # this is not automatically inherited from FlatpageFormOld | |
class FlatPageAdmin(FlatPageAdminOld): | |
form = FlatpageForm | |
# We have to unregister the normal admin, and then reregister ours | |
admin.site.unregister(FlatPage) | |
admin.site.register(FlatPage, FlatPageAdmin) |
To get this to work In Django 2.0 I created a new app call projectflatpages.
Reference: https://docs.djangoproject.com/en/2.0/ref/contrib/flatpages/#via-the-admin-interface, https://docs.djangoproject.com/en/2.0/ref/contrib/admin/#django.contrib.admin.ModelAdmin.formfield_overridesCreated an admin.py in the app folder.
from django.contrib import admin from django.db import models from django.contrib.flatpages.admin import FlatPageAdmin from django.contrib.flatpages.models import FlatPage from django.utils.translation import gettext_lazy as _ from ckeditor.widgets import CKEditorWidget # Define a new FlatPageAdmin class FlatPageAdmin(FlatPageAdmin): formfield_overrides = { models.TextField: {'widget': CKEditorWidget} } # Re-register FlatPageAdmin admin.site.unregister(FlatPage) admin.site.register(FlatPage, FlatPageAdmin)
This works fine. thanks dude.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
To get this to work In Django 2.0 I created a new app call projectflatpages.
Reference: https://docs.djangoproject.com/en/2.0/ref/contrib/flatpages/#via-the-admin-interface, https://docs.djangoproject.com/en/2.0/ref/contrib/admin/#django.contrib.admin.ModelAdmin.formfield_overrides
Created an admin.py in the app folder.