是否可以在 Django 中以一种形式创建两个不同的提交按钮?
Is it possible to create two different submit button in one form in Django?
所以我正在处理我的 Django 项目,运行 遇到了一个问题。我有一个自定义 ModelForm,我正在尝试两种不同的作品。我正在尝试为表单创建两个提交按钮,一个用于正常提交,另一个用于更改输入数据然后提交。
例如,假设我的表单中有 name
字段。如果用户单击按钮 A,则提交 name
。但是,如果用户单击按钮 B,我希望 name
字段作为 name@gmail.com
提交。
是否可以让两个按钮在一个 Django 表单中以不同的方式工作?提前致谢。
这是可能的,在你看来你会这样做:
class SomeView(UpdateView):
...
def form_valid(self, form):
self.object = form.save(commit=False)
if 'add-email' in self.request.POST:
self.object.name = f'{self.object.name}@gmail.com'
self.object.save()
然后在您的模板中:
<form ...>
<button type="submit" name="save">Submit</button>
<button type="submit" name="add-email">Submit with Email</button>
</form>
所以我正在处理我的 Django 项目,运行 遇到了一个问题。我有一个自定义 ModelForm,我正在尝试两种不同的作品。我正在尝试为表单创建两个提交按钮,一个用于正常提交,另一个用于更改输入数据然后提交。
例如,假设我的表单中有 name
字段。如果用户单击按钮 A,则提交 name
。但是,如果用户单击按钮 B,我希望 name
字段作为 name@gmail.com
提交。
是否可以让两个按钮在一个 Django 表单中以不同的方式工作?提前致谢。
这是可能的,在你看来你会这样做:
class SomeView(UpdateView):
...
def form_valid(self, form):
self.object = form.save(commit=False)
if 'add-email' in self.request.POST:
self.object.name = f'{self.object.name}@gmail.com'
self.object.save()
然后在您的模板中:
<form ...>
<button type="submit" name="save">Submit</button>
<button type="submit" name="add-email">Submit with Email</button>
</form>