
Contenido
Luego, extrae el título y el contenido enviados del objeto request.form que le da acceso a los datos del formulario en la solicitud. Si no se proporciona el título, se cumplirá la condición si no es título, mostrando un mensaje al usuario informándole que el título es obligatorio. Si, por otro lado, se proporciona el título, abre una conexión con la función get_db_connection () e inserta el título y el contenido que recibió en la tabla de publicaciones.
Para completar esta acción, inicie sesión en su cuenta comunitaria o cree una nueva
Aprendió cómo crear una pequeña aplicación web, ejecutarla en un servidor de desarrollo y permitir que el usuario proporcione datos personalizados a través de parámetros de URL y formularios web. También usó el motor de plantillas Jinja para reutilizar archivos HTML y usar la lógica en ellos. Al final de este tutorial, ahora tiene un blog web en pleno oracionasanjudas-tadeo.com funcionamiento que interactúa con una base de datos SQLite para crear, mostrar, editar y eliminar publicaciones de blog utilizando el lenguaje Python y las consultas SQL. Si desea obtener más información sobre cómo trabajar con Flask y SQLite, consulte este tutorial sobre cómo usar relaciones de bases de datos de uno a muchos con Flask y SQLite.
Este formulario envía una solicitud POST a su función de vista create (). Sin embargo, todavía no existe un código para compra venta automoviles manejar una solicitud POST en la función, por lo que no sucede nada después de completar el formulario y enviarlo.
Python desde cero
Una aplicación es una unidad de código autónoma que se puede ejecutar por sí sola. Una aplicación puede hacer muchas cosas, como servir una página web en el navegador o manejar la autenticación de usuario o cualquier otra cosa que se le ocurra. Django viene con algunas aplicaciones predeterminadas preinstaladas, como las aplicaciones de autenticación y administrador de sesiones. Cualquier aplicación que creemos o aplicaciones de terceros que necesitemos se agregarán al final de la lista de Aplicaciones instaladas después de que se instalen las aplicaciones predeterminadas. Con esto, los usuarios de su aplicación ahora pueden escribir nuevas publicaciones de blog y agregarlas a la base de datos, editar y eliminar publicaciones existentes. Hasta este punto, tiene una aplicación que muestra las publicaciones en su base de datos, pero no proporciona forma de agregar una nueva publicación a menos que se conecte directamente a la base de datos SQLite y agregue una manualmente. En esta sección, creará una página en la que podrá crear una publicación proporcionando su título y contenido.
La función flash () almacena mensajes flasheados en la sesión del navegador del cliente, lo que requiere establecer una clave secreta. Esta clave secreta se utiliza para proteger sesiones, lo que permite a Flask recordar información de una solicitud a otra, como pasar de la nueva página de publicación losmejoresdrones.net a la página de índice. El usuario puede acceder a la información almacenada en la sesión, pero no puede modificarla a menos que tenga la clave secreta, por lo que nunca debe permitir que nadie acceda a su clave secreta. Consulte la documentación de Flask para las sesiones para obtener más información.
A continuación, agregará la capacidad de crear, editar y eliminar publicaciones de blog a su aplicación. Las asignaciones de URL se administran a través de la variable urlpatterns, que es una lista de Python de funciones path (). El urlpatternslist define inicialmente una función única que asigna todas las URL con el patrón admin / al módulo admin.site.urls, que contiene las definiciones de asignación de URL de la aplicación de administración. El script manage.py se utiliza para crear aplicaciones, trabajar con bases de datos e iniciar el servidor web de desarrollo.
Aplicación Wsgi
- Las aplicaciones se registran agregándolas a la listaINSTALLED_APPS en la configuración del proyecto.
- La herramienta crea una nueva carpeta y la llena con archivos para las diferentes partes de la aplicación.
- settings.py contiene todas las configuraciones del sitio web, incluido el registro de las aplicaciones que creamos, la ubicación de nuestros archivos estáticos, los detalles de configuración de la base de datos, etc.
- Ahora que se ha creado la aplicación, tenemos que registrarla con el proyecto para que se incluya cuando se ejecute alguna herramienta.
- A lo largo del camino, aprendimos información fundamental sobre mapeadores de URL, vistas, consulta de la base de datos con modelos, pasando información a una plantilla desde una vista y creando y extendiendo plantillas.
- Acabamos de crear la página de inicio de nuestro sitio, una página HTML que muestra una serie de registros de la base de datos y enlaces a otras páginas aún por crear.
La función recibirá el valor de ID y lo usará para obtener la publicación de la base de datos con la función get_post (). Al igual que cuando crea una nueva publicación, primero extrae los datos del objeto request.form y luego muestra un mensaje si el título tiene un valor vacío; de lo contrario, abre una conexión de base de datos. Luego, actualiza la tabla de publicaciones estableciendo un nuevo título y contenido nuevo donde el ID de la publicación en la base de datos es igual al ID que estaba en la URL.
Flask proporciona una función auxiliar render_template () que permite el uso del motor de plantillas Jinja. Esto hará que la administración de HTML sea mucho más fácil al escribir su código HTML en archivos .html y al usar la lógica en su código HTML. Una aplicación de Django creada usando startapp buscará plantillas en un subdirectorio llamado ‘plantillas’ de sus aplicaciones. Por ejemplo, en la vista de índice que acabamos de agregar, la función render () esperará encontrar el archivo index.html en / locallibrary / catalog / templates / y generará un error si el archivo no está presente. Los enlaces en la página de índice ahora funcionarán como se esperaba. Con esto, ya ha terminado de construir la parte de la aplicación responsable de mostrar las publicaciones del blog en su base de datos.