Skip to main content

Django Textarea Widget Integrated Vditor with Customizable Configuration

Project description

dj_vditor

Django-vditor 是基于 vditor v3.8.0 的一个 django Markdown 文本编辑插件应用。

Django-mdeditor 的灵感参考自伟大的项目 django-ckeditor.

Installation

### 默认安装只需Django
pip install dj-vditor-widget

### 安装oss上传插件
pip install dj-vditor-widget[oss]

### 安装tos上传插件
pip install dj-vditor-widget[tos]

### 安装所有插件
pip install dj-vditor-widget[all]

Quick Start

  1. Add to INSTALLED_APPS:
INSTALLED_APPS = [
    ...
    'dj_vditor',
]
  1. Add URL route in urls.py:
# 当然你也可以自定义url和view, 只要跟配置中的upload.url一致即可
from dj_vditor.views import vditor_images_upload_view

urlpatterns = [
   ...
    path('upload/', vditor_images_upload_view, name='vditor_upload'),
]
  1. Use in Model:
from dj_vditor.models import VditorTextField

class Article(models.Model):
    content = VditorTextField()
  1. Configure settings:
# settings.py
# 如果你需要使用阿里云的OSS上传, 请设置以下配置
# DJ_IMAGE_UPLOADER_OSS_CONFIG = {
#     "ACCESS_KEY": getenv("ALIYUN_ACCESS_KEY_ID"),
#     "SECRET_KEY": getenv("ALIYUN_ACCESS_KEY_SECRET"),
#     "ENDPOINT": getenv("OSS_ENDPOINT"),
#     "BUCKET_NAME": getenv("OSS_BUCKET_NAME"),
# }

# 如果要使用火山引擎的TOS上传, 请设置以下配置
DJ_IMAGE_UPLOADER_TOS_CONFIG = {
    "ACCESS_KEY": getenv("VOLCENGINE_ACCESS_KEY"),
    "SECRET_KEY": getenv("VOLCENGINE_SECRET_KEY"),
    "ENDPOINT": getenv("VOLCENGINE_ENDPOINT"),
    "BUCKET_NAME": getenv("VOLCENGINE_BUCKET_NAME"),
    "REGION": getenv("VOLCENGINE_REGION"),
}
# 这是默认配置, 如果不需要修改的话, 可以不设置, 直接使用默认配置
DEFAULT_CONFIG = {
    "width": "100%",
    "height": 720,
    "cache": {"enable": False},
    "mode": "sv",
    "debugger": "false",
    "icon": "ant",
    "outline": "",
    "counter": {
        "enable": True,
    },
    "lang": "zh_CN",
    "toolbar": [
        "emoji",
        "headings",
        "bold",
        "italic",
        "strike",
        "link",
        "|",
        "list",
        "ordered-list",
        "check",
        "outdent",
        "indent",
        "|",
        "quote",
        "line",
        "code",
        "inline-code",
        "insert-after",
        "table",
        "|",
        "upload",
        "fullscreen",
        "export",
        "|",
        "outline",
    ],
    "upload": {
        "storage": "local",
        "local_path": "admin",
        "url": "/upload/",  # 上传接口地址
        "max": 5 * 1024 * 1024,  # 5MB
        "accept": "image/png,image/jpeg,image/gif,image/webp",  # 允许类型
        "fieldName": "file[]",
        "multiple": True,
    },
}

# 如果要覆盖的话, 可以在settings.py中设置VDITOR_CONFIGS, 这样就不会使用默认配置了
VDITOR_CONFIGS = {
    "upload": {"local_path": "my_custom_path", "storage": "tos"},
    "height": 500,
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dj_vditor_widget-0.3.5.tar.gz (4.1 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dj_vditor_widget-0.3.5-py3-none-any.whl (4.2 MB view details)

Uploaded Python 3

File details

Details for the file dj_vditor_widget-0.3.5.tar.gz.

File metadata

  • Download URL: dj_vditor_widget-0.3.5.tar.gz
  • Upload date:
  • Size: 4.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.4

File hashes

Hashes for dj_vditor_widget-0.3.5.tar.gz
Algorithm Hash digest
SHA256 22a0f79e75155123fc1b67813f95a7a274e06974a5814d1f88cbe1e114d5d636
MD5 665ed7a58f9bc38de26bc82dbcb5b435
BLAKE2b-256 3f31a7ff0f98f95a0f7044158c311685414e26440bcde819422e1a5d5918f3df

See more details on using hashes here.

File details

Details for the file dj_vditor_widget-0.3.5-py3-none-any.whl.

File metadata

File hashes

Hashes for dj_vditor_widget-0.3.5-py3-none-any.whl
Algorithm Hash digest
SHA256 d1e8f141f991311ca105370c3a27e5501b8b5c299a3d4fbfa85f177c111e7fe9
MD5 cf4ff413e15a7406a893829555ebb302
BLAKE2b-256 61a5c372fd97dcb20d685c41d6fee9c21e8d306b1cba60ba06fe7fdd7feaa042

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page