Проблема с отображением встроенных форм ModelAdmin
Я сталкиваюсь с тем, что кажется мне странной ошибкой при отображении инлайн-форм в представлении "Добавить" ModelAdmin
.
Вот минимальный пример с Django версии 2.2.4
.
в models.py
:
class MyModel(models.Model):
text = models.CharField(max_length=100)
class RelatedModel(models.Model):
parent = models.ForeignKey(MyModel, null=False, on_delete=models.CASCADE)
number = models.DecimalField(decimal_places=2, max_digits=10, null=False, blank=False)
в admin.py
:
class RelatedModelInlineTabular(admin.TabularInline):
model = RelatedModel
show_change_link = False
fields = ("number", )
class TestMyModelCreate(admin.ModelAdmin):
fields = ['text', ]
inlines = [RelatedModelInlineTabular]
admin.site.register(MyModel, TestMyModelCreate)
Шаги для воспроизведения
- войдите на сайт администратора django .
- откройте представление "Добавить" для
MyModel
(т.е. перейдите к списку Моделей и нажмите на кнопку "Добавить новую")
Ожидаемый результат
Форма отображает пустое текстовое поле. Ниже отображается инлайн-форма с 3 пустыми строками для потенциальных связанных экземпляров RelatedModel
Фактический результат
Форма Inline отображается дважды, каждый экземпляр со своими 3 пустыми строками, как будто я указал ее дважды.
Ниже я прилагаю скриншот фактической страницы (Discount
- это имя связанной Модели). Я попробовал и получил тот же результат как с StackedInline
, так и с TabularInline
.
Сделал ли я здесь какую-то банальную ошибку, которая могла бы объяснить происходящее? Или это известная ошибка? Заранее благодарю всех, кто поможет.