python - Django admin - 删除自引用字段的 "add another"按钮

标签 python django django-admin

我有一个 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/

相关文章:

python - 是否可以使用 Scrapy 通过代理访问 https 页面?

python - 在 Python 的正则表达式中转义像 ) 这样的特殊字符

django - 在 Django 字段上过滤无

python - 在 Django 中间件中设置 cookie

python - Django app_label权限问题

python - Django-admin:TemplateDoesNotExist 位于/admin/plans/plan/

python - 执行多次运行时如何使用 Keras 保留纪元号?

python - 如何在单独的python脚本中使用经过python训练的模型

django - 逐字包含模板

python - 无法将内联添加到 Django 站点管理框架