¿Cómo puedo acceder al valor del botón enviar formulario en Django?

Tengo un proyecto Django que, en una página, tiene varios formularios (en diferentes tags) que pueden enviarse para tener diferentes efectos. En todos los casos, quiero que el usuario sea redirigido de nuevo a la misma página, por lo que uso, en mi opinión, el patrón de enviar el formulario y luego redirigir a la página original. En al menos un caso, la única diferencia entre dos de los formularios es el valor del botón de envío.

En mi opinión, tengo el código (que es la primera vez que mi función de vista accede al request.POST ):

 if request.POST['submit']=='Add': #code to deal with the "Add" form 

y en la plantilla, el primer formulario tiene un botón de enviar como

  

Pensé que esto funcionaría, pero cuando envío ese formulario, recibo un error en la línea que se ve desde arriba:

No se encontró la clave ‘submit’ en

Obviamente, esto no tiene una clave de 'submit' o ninguna clave con el valor correspondiente al botón de envío en el que hice clic. Entonces, dado que esto no funciona, ¿cómo puede acceder al valor del botón de envío o decir cuál de los formularios se ha enviado?

Submit es una estructura de formulario HTML … Debe usar el atributo de nombre de los objetos de formulario de la siguiente manera … En su plantilla:

 
...
...

En su opinión:

 if 'list' in request.POST: # do some listing... elif 'do-something-else' in request.POST: # do something else 

Una cosa a tener en cuenta para evitar confusiones. El name del botón de envío no se mostrará si solo hay un botón en el formulario.

 #template.html 
#view.py ... 'first_button' in request.POST #False

 #template.html 
#view.py ... 'first_button' in request.POST #True if you clicked on that button