Si has llegado a este capítulo, quiere decir que estamos listos para ya lo último.
El manejo de formularios es la acción de recibir sus datos en nuestro back-end, nuestras vistas podrán acceder a los datos ingresados por el usuario, y con ello podremos realizar la creación de un nuevo producto.
Estaremos usando lo aprendido en los últimos capítulos, así que échales un vistazo.
La vista crear
dentro de hogar/views.py
debe tener un aspecto así:
1 2 3 4 5 6 7 8 |
|
Nuestro formulario no abarca el campo slug
de nuestro modelo Producto
. Por lo que tendremos que automatizarlo.
Dentro de hogar/models.py
, importamos slugify
:
1 |
|
Ahora, sobreescribimos la funcion save()
1 2 3 4 5 6 7 |
|
Sobrescribir está bien, pero siempre debes llamar al método original mediante
super
.
Ahora, en el navegador, podemos ingresar un nuevo producto:
Si quieres acceder a los datos antes del guardado, puedes hacerlo mediante
formulario.cleaned_data["nombre"]
.
Encleaned_data[]
se encuentran los datos sanitizados.
python ... if formulario.is_valid(): # verifica que el formulario sea valido # 👇 como heredamos el formulario de un modelo. podemos acceder a su metodo save() print(formulario.cleaned_data["nombre"]) # "hoyo de tarugo" formulario.save() # esto guardara lo ingresado a nuestra tabla Productos ...
Endata[]
se encuentran los datos crudos, no se recomienda su uso.
Al clicar en el botón Submit
, el producto debería ser guardado en la base de datos, por lo que podríamos verlo en la galería de productos.