Skip to content

euan/django-ckeditor

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Django CKEditor:

Django admin CKEditor integration.

Provides a RichTextField and CKEditorWidget utilizing CKEditor with image upload and browsing support included.

Installation:

  1. Install or add django-ckeditor to your python path.

  2. Add ckeditor to your INSTALLED_APPS setting.

  3. Copy the media/ckeditor directory into any directory within your media root. You can override the location in your settings (see below).

  4. Add a CKEDITOR_MEDIA_PREFIX setting to the project's settings.py file. This setting specifies a URL prefix to the ckeditor media. Make sure to use a trailing slash:

    CKEDITOR_MEDIA_PREFIX = "/media/ckeditor/"
    
  5. Add a CKEDITOR_UPLOAD_PATH setting to the project's settings.py file. This setting specifies an absolute path to your ckeditor image upload directory. Make sure you have write permissions for the path, i.e.:

    CKEDITOR_UPLOAD_PATH = "/home/media/media.lawrence.com/uploads"
    
  6. Add ckeditor url include to the project's url.py file:

    (r'^ckeditor/', include('ckeditor.urls')),
    

Usage:

Field:

The quickest way to add rich text editing capabilities to your models is to use the included RichTextField model field type. A CKEditor widget is rendered as the form field but in all other regards the field behaves as the standard Django TextField. For example:

from django.db import models
from ckeditor.fields import RichTextField

class Post(models.Model):
    content = RichTextField()

Widget:

Alernatively you can use the included CKEditorWidget as the widget for a formfield. For example:

from django import forms
from django.contrib import admin
from ckeditor.widgets import CKEditorWidget

from post.models import Post

class PostAdminForm(forms.ModelForm):
    content = forms.CharField(widget=CKEditorWidget())
    class Meta:
        model = Post

class PostAdmin(admin.ModelAdmin):
    form = PostAdminForm

admin.site.register(Post, PostAdmin)

About

Django admin CKEditor integration.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 98.7%
  • PHP 1.1%
  • Python 0.2%