#django #django-admin
#django #django-admin
Вопрос:
В моей модели у меня есть следующие два поля Treatment
:
is_followup = models.BooleanField()
parent_treatment = models.ForeignKey('self', blank=True, null=True,
on_delete=models.CASCADE)
На снимке экрана ниже с моей страницы администратора я бы хотел выделить «Родительское лечение» серым цветом, если is followup не отмечен. Возможно ли это? и если да, то как это сделать?
Ответ №1:
Вы должны сделать это в JavaScript.
Этот фрагмент кода может вам помочь:
django.jQuery(function($) {
'use strict';
var $isFollowup = $('#id_is_followup');
function toggleCheckbox() {
$('#id_parent_treatment').prop('disabled', !$isFollowup.prop('checked'));
}
$isFollowup.on('change', toggleCheckbox);
toggleCheckbox();
});
Не забудьте обратиться к этому фрагменту JavaScript от вашего Model-Admin, используя:
class TreatmentAdmin(admin.ModelAdmin):
...
Media:
js = ['my-project/treatment-admin.js']