当前位置: 首页 > 面试题库 >

如何建立多个提交按钮Django表单?

杜君浩
2023-03-14
问题内容

我有一个带有一个电子邮件输入和两个提交按钮的表单,用于订阅和取消订阅新闻通讯:

<form action="" method="post">
{{ form_newsletter }}
<input type="submit" name="newsletter_sub" value="Subscribe" />
<input type="submit" name="newsletter_unsub" value="Unsubscribe" />
</form>

我也有上课表格:

class NewsletterForm(forms.ModelForm):
    class Meta:
        model = Newsletter
        fields = ('email',)

我必须编写自己的clean_email方法,并且我需要知道表单是通过哪个按钮提交的。但是提交按钮的值不在self.cleaned_data字典中。否则我可以获取按钮的值吗?


问题答案:

你可以self.dataclean_email方法中使用来在验证之前访问POST数据。它应包含一个称为newsletter_subnewsletter_unsub取决于所按下按钮的键。

# in the context of a django.forms form

def clean(self):
    if 'newsletter_sub' in self.data:
        # do subscribe
    elif 'newsletter_unsub' in self.data:
        # do unsubscribe


 类似资料:
  • 问题内容: 我有以下代码,基本上它正在执行两个操作。第一个是将我的表单数据提交到google电子表格,另一个操作是将我的第二个表单文本框值数据提交到另一个页面文本框值。这个怎么做? 从上面可以看到,这是第一页,第二页是第二种形式的Sankranthi_Reserv2.asp。我想在那儿传递文本框值,所以问题是第一种形式是提交给Google文档并存储数据,但是第二种形式需要将手机号码文本框值传递给下

  • 问题内容: 假设您以HTML表单创建向导。一键向后退,一键向前。当您按下时,由于 后退 按钮首先出现在标记中,它将使用该按钮提交表单。 例: 我想确定当用户按下时使用哪个按钮提交表单。这样,当您按下向导时,向导将移至下一页,而不是上一页。您是否必须使用此功能? 问题答案: 我希望这有帮助。我只是在按右边的按钮。 这样,按钮位于按钮的左侧,但在HTML结构中排在第一位: 优于其他建议的好处:没有Ja

  • 问题内容: 我有一个Django项目,该项目在一页上具有多种形式(具有不同的标记),可以提交以产生不同的效果。在所有情况下,我都希望将用户重定向回同一页面,因此在我看来,我使用提交表单然后重定向到原始页面的模式。在至少一种情况下,两种形式之间的唯一区别是提交按钮的值。 在我看来,我有代码(这是我的视图函数第一次访问): 在模板中,第一个表单具有一个提交按钮,例如 我以为这样可以,但是当我提交该表格

  • 问题内容: 目前,我有一个HTML表单,用户可以在其中输入文章的标题和文本。当需要提交时,将显示两个按钮。一种是“保存”他们的文章而不发布它,另一种是“发布”该文章并将其公开。 我正在使用PHP,并且试图找出如何分辨使用了哪个按钮,以便在数据库中存储相应的相应值。 可能应该早些时候提到过,但是我无法分配按钮值,因为按钮是图像,所以文本会显示在其上方。 问题答案: 给每一个属性。仅单击的属性将被发送

  • 问题内容: 是否可以使用Django中的一个提交按钮提交两种不同的形式?我有一个称为“仪器”的形式和四个相等的形式“配置”。现在,我想始终提交一个配置和工具。例如instrument + config 1和instrument + config 2,并且每个配置都有自己的提交按钮。 我已经在配置表单中用一个按钮尝试过: 并调用js函数“ onclick”: 这是我在views.py中的方法: 问题

  • 我在一个网站上有两个类似的表单,我想合并成一个有两个提交按钮的表单。他们使用大多数相同的数据。 第一个表单使用GET将数据发送到另一台服务器。第二个表单通过电子邮件发送。我想强烈鼓励网站用户在尝试选项二之前先使用选项一。 我知道如何使用javascript实现这一点,但不是以一种退化良好的方式。还有其他方法可以有两个提交选项吗?或者其他如何实现这一点的想法?谢谢