Tengo la siguiente plantilla de django (http: // IP / admin / start / está asignado a una vista hipotética llamada vista):
{% for source in sources %}
<tr>
<td>{{ source }}</td>
<td>
<form action="/admin/start/" method="post">
{% csrf_token %}
<input type="hidden" name="{{ source.title }}">
<input type="submit" value="Start" class="btn btn-primary">
</form>
</td>
</tr>
{% endfor %}
sources
es el objects.all()
de un modelo de Django al que se hace referencia en la vista. Cada vez que se hace clic en una entrada de envío "Inicio", quiero que la vista "Inicio" use los {{ source.title}}
datos en una función antes de devolver una página renderizada. ¿Cómo recopilo información POSTADA (en este caso, en la entrada oculta) en las variables de Python?
input
y solo un{{ form }}
y mi formulario tiene solo una entrada de texto (charfield). ¿Cómo puedo acceder a sus datos?Si necesita hacer algo en la interfaz, puede responder al evento onsubmit de su formulario. Si solo está publicando en admin / start, puede acceder a las variables de publicación en su vista a través del objeto de solicitud. request.POST que es un diccionario de variables de publicación
fuente
Para los formularios de django, puede hacer esto;
form = UserLoginForm(data=request.POST) #getting the whole data from the user. user = form.save() #saving the details obtained from the user. username = user.cleaned_data.get("username") #where "username" in parenthesis is the name of the Charfield (the variale name i.e, username = forms.Charfield(max_length=64))
fuente