首页 > 解决方案 > Django Admin:从“父”更改视图中选择外键“子”

问题描述

我有两个模型,父母和孩子(一个父母有很多孩子)。我可以在父更改视图中向父级添加新子级,但我希望能够将现有的无父级子级批量添加到父级,类似于多对多字段的 filter_horizo​​ntal 选项。

我的模型大致如下:

#models.py

class Parent(models.Model):
    name = models.CharField(max_length=50)

class Child(models.Model):
    name = models.CharField(max_length=50)
    parent = models.ForeignKey(Parent,on_delete=models.SET_NULL)

#admin.py

class ChildInline(admin.TabularInline):
    model = Child

@admin.register(Parent)
class ParentAdmin(admin.ModelAdmin):
    inlines = [ChildInline,]

我正在考虑使用多对多关系并使用 filter_horizo​​ntal,但我想确保一个孩子只有一个父母,而 filter_horizo​​ntal 列表只显示无父母的孩子,我不知道该怎么做。

标签: djangodjango-modelsdjango-admin

解决方案


推荐阅读