В модели у меня есть DecimalField "first_arg" и множественный выбор CharField "second_arg".
Я бы хотел добиться следующего: в панели администратора, если конкретный вариант (давайтескажем, "B") выбрано для поля "second_arg", увеличивайте любое значение, которое вставляется в поле формы "first_arg", на 2. Это должно происходить только на уровне пользовательского интерфейса.Какой правильный способ это сделать?
Поскольку это часть интерфейса администратора, изменение модели должно быть неправильным.С другой стороны, я не смог найти ничего об этом в документации.Я думал об использовании JS в статическом файле, но это довольно странно.Есть ли элегантный способ сделать это в Django Admin?
Код модели:
a = "a"
b = "b"
etc = "etc"
RELEVANT_OPTIONS = (
(a, "A"),
(b, "B"),
(etc, "etc")
)
class MyModel(models.Model):
first_arg = models.DecimalField(
max_digits=4,
decimal_places=2,
blank=True, null=True
)
second_arg = models.CharField(
choices=constants.RELEVANT_OPTIONS,
max_length=20,
blank=True, null=True
)
class Meta:
abstract = True