Django Admin: измените способ отображения данных - PullRequest
2 голосов
/ 19 августа 2010

У меня есть модель с полем JSON.Содержание которых может быть или не быть напечатано, я не против, так как данные действительны.Однако, когда он отображается в администраторе django, я бы хотел, чтобы содержимое поля было напечатано так, чтобы его было легко читать.Я не против, если это означает, что довольно печатная версия затем сохраняется.

Любые советы, как это сделать?

Ответы [ 2 ]

2 голосов
/ 19 августа 2010

Отвечая на мой вопрос ...

После прочтения документации, на которую указал мне Мэтью Моррисон. Я обнаружил, что могу добавить JavaScript, чтобы изменить вещи.

к моему ModelAdmin я добавил

class Media:
    js = ("/site_media/json2.js", "/site_media/custom.js")

json2.js с сайта Дугласа Крокфорда

custom.js - это

django.jQuery(document).ready(function() {
    data = JSON.parse(django.jQuery("#id_json")[0].value);
    django.jQuery("#id_json")[0].value = JSON.stringify(data, null, 4)
});

Легко, когда знаешь как.

1 голос
/ 19 августа 2010

Возможно создать собственный виджет ...

http://docs.djangoproject.com/en/dev/ref/contrib/admin/#django.contrib.admin.ModelAdmin.formfield_overrides

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...