Проверка между встроенными наборами форм Django
Я удивлен, что этот вопрос ранее не задавался (или, по крайней мере, я его не нашел). У меня есть ModelAdmin с двумя встроенными наборами форм, и я хотел бы провести перекрестную проверку между ними.
class PublicationGroupInlineFormSet(BaseInlineFormSet):
def clean(self):
# Here I validate the PublicationGroupInlineFormSet
class PublicationGroupInline(StackedInline):
model = PublicationGroup
formset = PublicationGroupInlineFormSet
class PublicationProjectInlineFormSet(BaseInlineFormSet):
def clean(self):
# Here I validate the PublicationProjectInlineFormset
class PublicationProjectInline(StackedInline):
model = PublicationProject
formset = PublicationProjectInlineFormSet
class PublicationAdmin(ModelAdmin):
inlines = (PublicationProjectInline, PublicationGroupInline)
admin.site.register(Publication, PublicationAdmin)
Вопрос простой, ответа нет. Как я могу сделать перекрестную проверку между двумя наборами форм? Спасибо!
1 ответ
Решение
К счастью, был еще один пользователь, который имел такую же потребность и взломал решение /questions/40968473/kak-pereproverit-modeladmin-i-ego-inline/40968481#40968481
В основном решение состоит в перезаписи add_view и change_view из admin.ModelAdmin для включения перекрестной проверки между наборами форм.