Читать книгу Django 2 - Antonio Melé - Страница 50
Crear formularios de un modelo
ОглавлениеSeguirá necesitando elaborar un formulario para que los usuarios puedan escribir comentarios de un artículo del blog. Recuerde que Django dispone de dos clases base para construir formularios: Form y ModelForm. Ya ha utilizado la primera anteriormente para permitir a los usuarios compartir artículos vía email. En este caso, va a utilizar la clase ModelForm para crear un formulario dinámicamente a partir del modelo Comment. Edite el fichero forms.py de la aplicación blog con las siguientes líneas:
Para crear un formulario a partir de un modelo, necesitamos indicar qué modelo usar para la construcción del formulario en la clase Meta de este último. Django inspecciona el modelo y construye un formulario dinámicamente por usted. Cada tipo de campo del modelo tiene su correspondiente tipo de campos de formulario. La manera en que defina los campos de los modelos se tendrá en cuenta para la validación de los formularios. Por defecto, Django construye un campo de formulario por cada campo del modelo. Sin embargo, puede indicar explícitamente qué campos quiere incluir en el formulario con la lista fields o definir qué campos quiere excluir con la lista exclude. Para el formulario CommentForm, ha usado los campos name, email y body porque estos son los campos que los usuarios podrán rellenar.