gpt4 book ai didi

python - Django:在 GenericStackedInline 上禁止 can_delete

转载 作者:IT老高 更新时间:2023-10-28 20:37:30 25 4
gpt4 key购买 nike

我已经构建了这个包含通用外键的模型:

class MyModel(models.Model):
content_type = models.ForeignKey(ContentType, verbose_name=_('content type'))
object_id = models.PositiveIntegerField(_('object id'))
content_object = generic.GenericForeignKey('content_type', 'object_id')

接下来我制作了一个通用的堆叠内联,以将其放入任何 ModelAmin 类中:

class MyModelStackedInline(generic.GenericStackedInline):
model = MyModel
formset = generic.generic_inlineformset_factory(MyModel, can_delete=False)
extra = 0

class SomeOhterModelAdmin(admin.ModelAdmin):
inlines = [MyModelStackedInline]

但是,尽管在 generic_inlineformset_factory 中传递了 can_delete=False 参数,但我总是在我的管理员 change_form 中看到 Delete 复选框。

这里是一个例子:http://img8.imageshack.us/img8/3323/screenshotbe.png

你知道如何去掉这个复选框吗?

谢谢你:)

最佳答案

也许这是 09 后的功能,但您可以在不覆盖 __init__() 方法的情况下指定它:

class StupidCarOptionsInline(admin.StackedInline):
model = models.StupidOption
form = StupidCarOptionAdminForm
extra = 0
can_delete = False

关于python - Django:在 GenericStackedInline 上禁止 can_delete,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1470811/

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