我有一个 Django 项目,其中包含一个带有可选自引用外键字段的模型类。部分片段:
class Site(models.model):
name = models.CharField(max_length=100)
parent_site = models.ForeignKey('self', null=True, blank=True)
我正在使用 Django 管理站点来创建新对象。对于此类的管理表单,我想禁用 parent_site
字段旁边的“添加另一个...”按钮(即当您创建新网站时) ,您无法打开弹出窗口来创建另一个新网站作为父网站)。
我无法从用户中删除 has_add_permission
,因为他们需要它位于当前的添加 View 中。我不介意从添加 View 和更改 View 中删除该函数,但限制删除添加 View 会很有帮助。
我还无法弄清楚如何使用内联字段类或 formfield_for_foreignkey
或自定义 ModelForm
来实现此目的。有人找到了比在自定义表单模板上使用 JavaScript 更优雅的解决方案吗?
最佳答案
管理类中没有添加 CSS hack:
max_num=0
或者在 admin.py 中尝试(对于较旧的 django 版本):
class MODEL_ADMIN(admin.ModelAdmin):
class Media:
css = {'all': ('css/no-addanother-button.css',)}
关于python - Django admin - 删除自引用字段的 "add another"按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30927963/