我已经尝试了In Django admin, how can I hide Save and Continue and Save and Add Another buttons on a model admin?中列出的所有解决方案,该帖子来自几年前,我无法找到有关如何禁用这些按钮的信息。由于自定义保存,“保存并继续编辑”按钮会导致错误。有没有办法在当前版本的django中禁用它? 约束: - 无法在django.contrib.admin之前放置应用程序 - 我只需要为一个表单禁用它。 - 我有一个自定义的创建表单,它有一个自定义保存方法(它是一个帐户创建)
答案 0 :(得分:1)
您可以隐藏按钮(基础功能仍然存在,但按钮不会显示)。
这应该有效
from django.contrib import admin
class MyModelAdmin(admin.ModelAdmin):
...
class Media:
css = {
'all': ('some/path/to/css/disable_save_and_continuue_editing_button.css'
}
<强> disable_save_and_continuue_editing_button.css 强>
input[name="_continue"] {
display: none;
}
答案 1 :(得分:0)
所以我知道了。如果您需要使用这些按钮,请复制submit_line.html
的代码,然后将其覆盖到您的templates/admin/submit_line.html
并转到setting.py
,然后转到
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))),"Project name or app name depends where you put your templates folder","templates")],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]
并以您的submit_line.html
代码
{% load i18n admin_urls %}
<div class="submit-row">
{% if show_save %}<input type="submit" value="{% trans 'Save' %}" class="default" name="_save">{% endif %}
{% if show_delete_link %}<p class="deletelink-box"><a href="{% url opts|admin_urlname:'delete' original.pk|admin_urlquote %}" class="deletelink">{% trans "Delete" %}</a></p>{% endif %}
{% if show_save_as_new %}<input type="submit" value="{% trans 'Save as new' %}" name="_saveasnew" {{ onclick_attrib }}/>{%endif%}
{% if show_save_and_add_another %}<input type="submit" value="{% trans 'Save and add another' %}" name="_addanother" {{ onclick_attrib }}/>{% endif %}
{% if show_save_and_continue %}<input type="submit" value="{% trans 'Save and continue editing' %}" name="_continue" {{ onclick_attrib }}/>{% endif %}
</div>
只需删除save
和continue
按钮,您就可以对其进行注释。
希望这会有所帮助。
如果有帮助,请将其标记为正确。