Django - Admin - при изменении формы - PullRequest
0 голосов
/ 22 ноября 2018

У меня общий вопрос к администратору django.

Можно ли реагировать на изменения формы?

У меня есть поле выбора на моем подробном сайте администратора django.Всякий раз, когда я изменяю данные из поля выбора, я хочу изменять поля, которые доступны только для чтения.

Кто-нибудь когда-либо имел дело с этой проблемой?

Спасибо и приветствия

Ответы [ 2 ]

0 голосов
/ 07 декабря 2018

Мои два цента:

Как и другие парни говорили, что это javascript работа.В административных страницах Django pases jquery.Это называется django.jQuery.Итак, вы бы сделали то, что предложил @Ashfaq.Вы создадите custom_script.js и добавите к метаклассу Media.

В основном (как @Ashfaq):

class MyModelAdmin(admin.ModelAdmin):
    class Media:
        js = ("js/custom_script.js",)

и custom_script.js будут выглядеть примерно так (при условии, чтоВаше поле select называется id_category):

django.jQuery( document ).ready(function() {
    console.log( "ready!" );
    django.jQuery('#id_category').change(function() {
      alert( "Handler for #id_category was called." );
    });
});

Функция ready гарантирует, что обработчик будет установлен.

0 голосов
/ 04 декабря 2018

Я думаю, что здесь сработает добавление jQuery + ваш пользовательский javascript и игра с событиями / щелчками, как вам нужно с элементами.

class MyModelAdmin(admin.ModelAdmin):
    class Media:
        js = ("js/custom_script.js",)

в custom_script вы можете добавить click илиизменить события, как вы хотите.

...