【发布时间】:2017-12-18 08:43:28
【问题描述】:
我在 Django 管理员中有一个内联模型,它与父级有 OneToOneField 关系。
class Child(models.Model):
parent = models.OneToOneField(Parent)
received_on = models.DateField(null=True,)
在管理内联中我不想显示“添加另一个按钮”所以我做了这样的事情:-
class CampaignInfluencerShippingTrackingInline(admin.TabularInline):
model = Child
can_delete = False
extra = 0
fields = ['received_on']
def has_add_permission(self, request):
return False
但它仍然显示添加另一个按钮,问题在于与父级的关系,因为它具有 OneToOneField 如果我尝试使用 ForeignKey 使用相同的代码添加另一个按钮未显示但使用 OneToOneField 它总是显示。
谁能建议我它是如何工作的以及我可以做些什么来从内联子项中删除添加另一个按钮?
我可以在父级中添加内联模型,但我的问题与如何从内联模型中删除“添加另一个按钮”有关。
【问题讨论】:
-
您需要从 django-admin 覆盖 template/admin/edit_inline/stacked.html 或 template/admin/edit_inline/tabular.html 以添加 template 文件夹(django-admin 文件夹的模板文件夹的精确副本)在您的文件夹中并覆盖具有该按钮代码的内部模板/html 文件。没有找到此更改的 django 文档。
标签: python django django-models django-admin