gpt4 book ai didi

python - Django TabularInline 字段在更新内联字段时出错

转载 作者:太空宇宙 更新时间:2023-11-03 12:01:26 25 4
gpt4 key购买 nike

我有一个像这样的模型

class Section(models.Model):
section_title = models.CharField(max_length=200)
section_tiles = models.ManyToManyField(Tile, blank=True)
on_menu = models.BooleanField(default=False)
section_is_active = models.BooleanField(default=True)

class Meta:
verbose_name = "Section"
verbose_name_plural = "Sections"

def __unicode__(self):
return self.section_title



class Page(models.Model):
page_title = models.CharField(max_length=200)
page_sections = models.ManyToManyField(Section, blank=True)
on_menu = models.BooleanField(default=False)
page_is_active = models.BooleanField(default=True)

class Meta:
verbose_name = "Page"
verbose_name_plural = "Pages"

def __unicode__(self):
return self.page_title

在管理部分我有如下代码:

class SectionTabularInline(admin.TabularInline):
model = Page.page_sections.through

class PageAdmin(admin.ModelAdmin):
inlines = [SectionTabularInline,]

list_display =[
'page_title',
'on_menu',
]

list_filter =[
'on_menu',
]

search_fields = [
'page_title',
]

ordering = ['page_title']

admin.site.register(Page, PageAdmin)

当我在页面的内联部分进行更改时,出现错误“请更正以下错误。”没有任何附加信息。如果我从页面中删除部分并保存它,那么我可以从头开始重新分配它们。有没有办法在不先删除它们的情况下更改它们?

最佳答案

发件人:Save M2M "Through" Inlines in Django Admin

我发现了我的问题:如果您想要多对多关系,您需要保留原始模型的主键 (id)。

关于python - Django TabularInline 字段在更新内联字段时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47610211/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com