@Boldy

Как получить сумму всех полей inline'ов в django?

Имеются два класса:

class Foo(models.Model):
	...
	my_max_total = models.IntegerField()

class Bar(models.Model):
	total = models.IntegerField()
	my_foo = models.ForeignKey(Foo)

class BarInline(admin.TabularInline):
    model = Bar

class FooAdmin(admin.ModelAdmin):
    inlines = (BarInline, )


Как при редактировании Bar, в том числе и в инлайнах, проверять, что итоговая сумма total'ов всех Bar одного Foo не превышает указанного у него my_max_total?
  • Вопрос задан
  • 2350 просмотров
Решения вопроса 1
dizballanze
@dizballanze
Software developer at Yandex
Задайте кастомную форму для админки и перегрузите у нее метод clean. В этом методе проверяйте все что нужно и в случае ошибки кидайте эксепшн forms.ValidationError.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы