Я использую django-prettyjson , чтобы отформатировать мои JSONFields в админке.Мой код настроен следующим образом:
models.py
class MyModel(models.Model):
structure = JSONField(default=dict, blank=True, null=True)
static_structure = JSONField(default=dict, blank=True, null=True, editable=False)
admin.py
class MyModelAdmin(admin.ModelAdmin):
formfield_overrides = {
JSONField: {'widget': PrettyJSONWidget }
}
def get_readonly_fields(self, request, obj=None):
if obj:
return ('static_structure')
else:
return super(MyModelAdmin, self).get_readonly_fields(request, obj)
admin.site.register(MyModel, MyModelAdmin)
InДругими словами, одно из полей JSONFields не редактируется и доступно только для чтения.Он появляется на моей панели администратора, но на него не влияет виджет, который отображает другое поле в формате JSON.
Есть ли способ это исправить?Просматривать текстовые данные в формате JSON - это полное перетаскивание.Спасибо!