viernes, 5 de abril de 2024

Estructura de una app en django

 Hemos creado una app en django que se llama myapp, que queda recogida en una carpeta con el mismo nombre. Esta carpeta contiene una serie de archivos que vamos a describir.


views.py

Podemos considerarle el archivo principal de nuestra app ya que aquí podemos definir lo que vamos a ejecutar o lo que queremos enviar al cliente (al navegador) para que se pueda ver en pantalla. Aquí podemos enviar archivos HTML.


__init__.py

Se genera vacío y sirve para que esta carpeta sea considerada como un módulo de Python.


migrations

Carpeta que de entrada solo tiene un archivo __init__.py y que posteriormente se ira llenando cuando modifiquemos la base de datos.

En django no tenemos que estar escribiendo consultas SQL sino que ya viene con un módulo de ORM (Object Relational Mapping). Esto permite abstraer la base de datos y posibilita que las consultas a la base de datos se realicen en el lenguaje en el que trabaja el framework, en nuestro caso Python. De esta forma se facilita la tarea del programador que no tiene que estar escribiendo código SQL, aunque si se desea para realizar una consulta compleja también se puede utilizar código SQL.


admin.py

Permite añadir a nuestras aplicaciones un panel de administrador, que permite administrar nuestras aplicaciones. Permite administrar datos, crear usuarios, crear roles para los usuarios, podemos decir si a un usuario le pertenece un dato. Todo ello con un panel que ya está creado por parte del framework. Para poder integrarlo es para lo que tendremos que usar este archivo ademin.py.


apps.py

Permite configurar esta aplicación. Es similar al settings.py que tenemos en la carpeta mysite.


models.py

Aquí podemos crear clases que finalmente se convertirán en tablas SQL. Contamos con la ventaja de que django ya tiene ese ORM que se encargará de crear esas tablas. Cuando modifiquemos ese código, django también se encargará de modicar esas tablas. Para ello django creará unos archivos que se llaman migraciones, que creará en la carpeta migrations, que sirve para actualizar código de la base de datos.


tests.py

Archivo que nos permite realizar testing de las vistas que enviaremos al navegador y poder comprobar lógica. Para ver si hemos consultado bien un dato, si hemos ejecutado correctamente una función.


No hay comentarios:

Publicar un comentario