Plugin for using Editor.js in django admin.
@editorjs/paragraph
-@editorjs/image
-@editorjs/header
-@editorjs/checklist
-@editorjs/list
-@editorjs/quote
-@editorjs/raw
-@editorjs/embed
-@editorjs/delimiter
-@editorjs/warning
-@editorjs/link
-@editorjs/marker
-@editorjs/attaches
-@editorjs/table
-
Usually in examples for Editor.js you will see tool names starts with lowercase, but for bypass potential conflicts i use uppercase.
pip install django-editorjs
# models.py
from django.db import models
from django_editorjs import EditorJsField
class Post(models.Model):
title = models.CharField(max_length=255)
body = EditorJsField()
def __str__(self):
return self.title
You can provide field specific configuration options to EditorJsField
by argument editorjs_config
.
class Post(models.Model):
title = models.TextField()
body = EditorJsField(
editorjs_config={
"tools": {
"Table": {
"disabled": False,
"inlineToolbar": True,
"config": {"rows": 2, "cols": 3,},
}
}
}
)
tools
Image
- (dict
) configuration for toolImageTool
. (For more info see official documentation for tool).Header
- (dict
) configuration for toolHeader
. (For more info see official documentation for tool).Checklist
- (dict
) configuration for toolChecklist
. (For more info see official documentation for tool).List
- (dict
) configuration for toolList
. (For more info see official documentation for tool).Quote
- (dict
) configuration for toolQuote
. (For more info see official documentation for tool).Raw
- (dict
) configuration for toolRawTool
. (For more info see official documentation for tool).Embed
- (dict
) configuration for toolEmbed
. (For more info see official documentation for tool).Delimiter
- (dict
) configuration for toolDelimiter
. (For more info see official documentation for tool).Warning
- (dict
) configuration for toolWarning
. (For more info see official documentation for tool).Link
- (dict
) configuration for toolLinkTool
. (For more info see official documentation for tool).Marker
- (dict
) configuration for toolMarker
. (For more info see official documentation for tool).Attaches
- (dict
) configuration for toolAttachesTool
. (For more info see official documentation for tool).Table
- (dict
) configuration for toolTable
. (For more info see official documentation for tool).
-
EditorJsField
Extends
TextField
and useEditorJsWidget
as widget have additional argument in constructor:editorjs_config
. -
EditorJsWidget
Widget that you can to use for using Editor.js in Django.
- load tool on demand
- more examples in README.md
- view-function for file uploading
- view-function for image uploading
- view-function for link info crawler