Supports Django >=1.8 and Python 2/3
pip install django-imperavi-widget
- Add
imperavi
to yourINSTALLED_APPS
setting.
INSTALLED_APPS = (
...
'imperavi',
)
- Add imperavi URL include to your project's
urls.py
file:
urlpatterns = [
...
url(r'^imperavi/', include('imperavi.urls')),
]
cd example/
pip install -r requirements.txt
python manage.py migrate
./manage.py shell -c "from django.contrib.auth.models import User; User.objects.create_superuser('admin', '[email protected]', 'admin')"
python manage.py runserver
Then go to http://127.0.0.1:8000/admin/ and try to create post instance
login: admin
password: admin
The quickest way to add rich text editing capabilities to your admin is to use the included ImperaviAdmin
class. For example::
from .models import Category
from imperavi.admin import ImperaviAdmin
class CategotyAdmin(ImperaviAdmin):
pass
admin.site.register(Category, CategotyAdmin)
If you want to use it with inline admin models you need to use ImperaviStackedInlineAdmin
class::
from .models import Post
from imperavi.admin import ImperaviStackedInlineAdmin
class PostInline(ImperaviStackedInlineAdmin):
model = Post
extra = 1
Add a IMPERAVI_CUSTOM_SETTINGS
variable to your settings.py
with custom config::
IMPERAVI_CUSTOM_SETTINGS = {
'resize': true
}
Full list of settings is here. http://redactorjs.com/docs/settings/
You can also customize the URL that django-imperavi-widget will look for the Editor media at by adding IMPERAVI_UPLOAD_PATH
to your settings.py
file like this::
IMPERAVI_UPLOAD_PATH = 'imperavi-uploads/'
The default value is 'imperavi/'
.
If you want to serve unique media content for specific model you can add unique_media = True
to your admin class::
from .models import Category
from imperavi.admin import ImperaviAdmin
class CategotyAdmin(ImperaviAdmin):
unique_media = True
admin.site.register(Category, CategotyAdmin)