Para la creación del proyecto genérico de Django, se deberá ejecutar
el comando de consola siguiente:
django-admin startproject nombre_proyecto
.
Este comando crea en nuestro directorio del proyecto la estructura del proyecto Django a desarrollar.
Dentro de dicho directorio, se encuentra una subcarpeta con el mismo nombre del proyecto donde se encuentra los archivos de configuración del proyecto Django. Donde encontramos:
- __ init __.py: Python package.
- asgi.py*: Configurar el despliegue en servidor.
- setings.py: Configuración de características. Agregar aplicaciones en proyecto Django. Configurar conexion a BBDD...
- urls.py: Añadir urls del proyecto
- wsgi.py: Despliegue de la applicacion en servidor
Adicionalmente, el archivo manage.py en la carpeta superior nos permitirá ejecutar los comandos para el proyecto.
Para poder ejecutar nuestra aplicación, se debe acceder al directorio de nuestro proyecto
donde se encuentra el archivo manage.py mencionado ya que es el encargado de ejecutar
el comando para empezar: python manage.py runserver
Nota: Tras ejecutar el servicio de nuestra aplicación, Django crea de forma automática un archivo db.sqlite3 pues es el que emplea para base de datos. Aunque se puede añadir otra base de datos para trabajar.
Para agregar el contenido web a nuestra aplicación, primero saber qué es el concepto de App.
El concepto App ayuda a organizar mas eficientemente la aplicación Django. Un proyecto, puede contener varias App para diferentes funcionalidades cada una (Organizar páginas de la aplicación, gestionar datos...)
Para lanzar una App, desde el directorio de nuestro proyecto, se ejecutará python manage.py startapp nombre_app
.
Una vez ejecutado el comando, al mismo nivel que nuestra subcarpeta del proyecto Django, se creará otro directorio
con el nimbre de nuestra App.
Dentro de dicho directorio, se crea una serie de archivos .py para la gestión de nuestra App, entre ellos, views.py.
Para que cualquier App que deseemos emplear en nuestro proyecto esté disponible, es necesario registrar la misma. Para ello, desde el fichero settings.py en nuestro directorio del proyecto Django creado, se añadirá en la lista INSTALLED_APPS el nombre de nuestra app.
Nota: Esta lista, deberá terminar con coma ','.
Para poder visualizar nuestra app, se deberá crear el url necesario. Para ello, en el archivo urls.py del directorio del proyecto, se añadirá un path deseado, seguido de la función que se ejecutará en el mismo. Dicha función, se debe definir en el archivo views.py del directorio de la app deseada.
Por lo tanto, en la lista urlpatterns se deberá añadir el siguiente path (a modo ejemplo):
path('cualquier_url/', funcion),
. Si queremos que sin necesidad de insertar url se ejecute una pagina,
el path deberemos dejarlo vacio tal que path('', funcion)
.
Nota: *Es posible añadir una extensión al path deseado path('ruta.html', funcion)
Para poder emplear la función deseada, se deberá importar desde la ruta del archivo views.py del
directorio de la app from nombre_proyecto.nombre_app.views import nombre_funcion
Nota: Esta lista, deberá terminar con coma ','.
Nota: Por defecto, existe el url admin/ para gestionar los usuarios de la aplicación.
Desde el archivo views.py de nuestra App, se definirá la función deseada. Esta función, ha de recibir el parámetro request. Este parámetro request, de modo automático proporciona la información desde el navegador a nuestra aplicación Django.
Como parámetro return de la función, se le indica a Django un HttpResponse con la información necesaria.
Nota: HttpResponse, debe ser importado para poder emplearlo desde django.http
En el caso que exista algun fallo ModuleNotFoundError en la importación de la función de view de nuestra app, se debe indicar en el editor (en este caso Pycharm) que nuestro directorio del proyecto Django es nuestro "Source Root"
Para crear plantillas .html que mostrar en las páginas de nuestro proyecto Django, se debe crear primero de todo un directorio para almacenar las plantillas, este directorio "templates" se encontrará dentro del directorio de nuestra app.
Adicionalmente, se puede incluir archivos .css para el desarrollo de nuestras páginas en el proyecto de Django. Para ello, se deberá crear el directorio "static", en el mismo nivel que templates, donde se albergará los códigos .css.
Para poder visualizar la plantilla .html creada, desde nuestra función en views.py se deberá llamar a la misma del
siguiente modo: return render(request, 'wellcome.html')
.
Además, al archivo .html que se tenga, se deberá añadir en el encabezado () la conexión al archivo .css que se vaya a emplear del siguiente modo:
{% load static %}
<link rel="stylesheet" href="{% static 'nombre_archivo.css' %}">
Fuente:
- https://pythonprogramming.net/css-django-tutorial/
- http://javaatpoint.com/how-to-link-static-filescss-in-django-with-templatehtml-in-easy-way-use-html-and-css-in-django/
Para el usuario de la aplicacion de Django, es necesario poder interactuar con la misma. Por lo tanto, se necesita el uso de botones, ingreso de formularios, desplegables...