Добавить удобный редактор JSON для администратора Django
У меня есть приложение Django, используя также rest_framework
и модель Product
с полем типа JSONField
, поэтому данные хранятся как JSON
в Postgres
Теперь я хочу предоставить администратору удобный и удобный способ изменить поле json. (names/keys and values)
, Есть ли расширение для этого или есть более быстрый способ, как это сделать.
Вот определение столбца в базе данных.my_column = JSONField(default={"editorial1": "text 1", "editorial_2": "text2", "editorial_3": "text"})
ОБА КЛАВИШИ И ЦЕННОСТИ ДОЛЖНЫ БЫТЬ ИЗМЕНЕНЫ АДМИНОМ
Администратор не должен ничего знать о JSON и не должен вводить / редактировать поля формата json
2 ответа
Ты можешь использовать prettyjson
"s PrettyJSONWidget
:
class ProductModelForm(forms.ModelForm):
class Meta:
fields = (
...
'my_column',
)
widgets = {
'my_column': PrettyJSONWidget(),
}
Я закончил тем, что использовал django-admin-json-editor
, Не самая лучшая вещь в мире, но она делает свое дело
Вы можете попробовать https://github.com/jrief/django-entangled
По сравнению с вышеупомянутыми редакторами, он не заменяет виджет, используемый для визуализации JSON, но позволяет переопределить ModelForm
который в противном случае генерируется Джанго ModelAdmin
,