在change_form Django中处理输入按钮

时间:2012-06-12 15:18:36

标签: python django button

我是Django和python的新手。我有个问题。有没有办法,点击进入按钮后重定向到同一个change_form页面而不被Django传递给change_list页面?这是我的意思是用户界面:

(在所有字段集下输入按钮) 希望你能理解我的意思并给我一些回应。谢谢 :)。

3 个答案:

答案 0 :(得分:2)

更改submit_line.html模板

我改变了:

{% if show_save %}<input name="_save" type="submit" value="{% trans 'Save' %}" class="default" {{ onclick_attrib }}/>{% endif %}

为:

{% if show_save %}<input name="_continue" type="submit" value="{% trans 'Save' %}" class="default" {{ onclick_attrib }}/>{% endif %}

将导致默认保存按钮充当保存并继续按钮。

stackoverflow-questiondjango documentation可以帮助您正确更改submit_line-template

完成&#34; submit_line.html&#34;:

{% load i18n %}
<div class="submit-row">
{% if show_save %}<input type="submit" value="{% trans 'Save' %}" class="default" name="_continue" {{ onclick_attrib }}/>{% endif %}
{% if show_delete_link %}<p class="deletelink-box"><a href="delete/" 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 %}
</div>

答案 1 :(得分:1)

如果你在谈论django管理员,那就有三个按钮:

  
      
  • 保存并添加新
  •   
  • 保存并继续编辑(您需要点击此内容)
  •   
  • 保存
  •   

如果您正在谈论自己的应用,请在表单中添加下一个参数,然后在表单验证中捕获它并相应地重定向

修改

我看到您创建了一个自定义按钮,您可以覆盖ModelAdmin中的save / enter方法并重定向到您想要的任何位置。只需在表单中添加隐藏的下一个输入即可。

示例:

settings.py

TEMPLATE_CONTEXT_PROCESSORS = (
    # other stuff
    "django.core.context_processors.request",
)

您的更改表单模板:

<input type="hidden" name="next" value="{{request.path}}" />

答案 2 :(得分:0)

输入按钮,将导致提交基础html表单。 这与django或python没什么共同点,并且是特定于浏览器的。

django change_form有三个提交按钮,最后一个将被使用。

有多种方法可以解决这个问题:

  • 覆盖hange_form-template并添加一些jquery以对keypress事件做出反应(回车)并触发所选择的按钮。

  • 重新排列这些按钮