Можно ли в 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>
Вернуться на верх