Django json 小部件是一个替代小部件,可以轻松编辑 django 的 jsonfield 字段。
项目描述
一个替代小部件,可以轻松编辑新的 Django 字段 JSONField(PostgreSQL 特定模型字段)
快速开始
安装 django-json-widget:
pip install django-json-widget
将其添加到您的INSTALLED_APPS:
INSTALLED_APPS = (
...
'django_json_widget',
...
)
在 admin.py 中添加小部件:
from django.contrib import admin
# from django.contrib.postgres import fields # if django < 3.1
from django.db import models
from django_json_widget.widgets import JSONEditorWidget
from .models import YourModel
@admin.register(YourModel)
class YourModelAdmin(admin.ModelAdmin):
formfield_overrides = {
# fields.JSONField: {'widget': JSONEditorWidget}, # if django < 3.1
models.JSONField: {'widget': JSONEditorWidget},
}
您还可以在 forms.py 中添加小部件:
from django import forms
from django_json_widget.widgets import JSONEditorWidget
from .models import YourModel
class YourForm(forms.ModelForm):
class Meta:
model = YourModel
fields = ('jsonfield',)
widgets = {
'jsonfield': JSONEditorWidget
}
配置
您可以使用以下选项自定义 JSONEditorWidget:
width:编辑器的宽度,带有 CSS 大小单位(px、em、% 等)的字符串。默认为90%。
height:编辑器的高度,以字符串 CSS 大小单位表示。默认为550px。
options : JSON 编辑器接受的选项字典。不支持需要函数的选项(例如 onError)。
mode (deprecated):默认的编辑器模式。这个参数是多余的,因为它可以被指定为options的一部分。保留以向后兼容 0.2.0 版。
attrs:要应用于包装器元素的 HTML 属性。请参阅Django 小部件文档。
JSONEditorWidget 小部件
前:
后:
学分
用于渲染此包的工具:
历史
0.1.0 (2017-05-10)
PyPI 上的第一个版本。