Iniciar y configurar un nuevo proyecto de Django

Iniciar y configurar un nuevo proyecto de Django

Desarrollar un nuevo sitio web en Django requiere de una serie de pasos iniciales que pueden resultar algo tediosos y confusos cuando nos estamos introduciendo en el framework: crear el proyecto, crear la aplicación, configurar las URL, etc. He aquí una guía rápida y fácil de seguir que podremos usar a modo de referencia cada vez que necesitemos iniciar un nuevo proyecto.

1. Crear una nueva carpeta y ubicarse allí con la terminal (usuarios de Windows pueden ver cómo abrir la terminal en una carpeta).

2. Crear un entorno virtual e instalar Django:

$ python3 -m venv env
$ source env/bin/activate
(env) $ pip install django

> py -m venv env
> env\Scripts\activate
(env) > pip install django

Este paso puede omitirse si se desea usar el intérprete de Python del sistema y Django ya está instalado.

3. Crear el nuevo proyecto de Django (en este ejemplo, con el nombre myproject; cámbiese a gusto) usando el comando django-admin e ingresar a la carpeta del proyecto:

(env) $ django-admin startproject myproject
(env) $ cd myproject

(env) > django-admin startproject myproject
(env) > cd myproject

4. Crear una nueva aplicación de Django (con el nombre myapp) dentro del proyecto:

(env) $ python manage.py startapp myapp

(env) > python manage.py startapp myapp

Recuérdese que Django distingue entre proyectos y aplicaciones. Una aplicación es un paquete de Python con una estructura determinada (modelos, vistas, plantillas, etc.). Un proyecto es ─además de un paquete de Python─ un conjunto de aplicaciones con una configuración común (por ejemplo, todas comparten la(s) mismas(s) base(s) de datos). Un proyecto de Django debe tener al menos una aplicación configurada.

5. Abrir el archivo myproject/settings.py con nuestro editor de código favorito e instalar la aplicación recién creada en el proyecto:

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    "myapp.apps.MyappConfig",   # <-- Agregar este elemento.
]

6. Crear alguna vista de prueba en la nueva aplicación, escribiendo lo siguiente dentro de myapp/views.py:

from django.http import HttpRequest, HttpResponse


def index(request: HttpRequest) -> HttpResponse:
    return HttpResponse("¡Hola, mundo!")

6. Crear el archivo myapp/urls.py y asociar la vista recién creada con alguna ruta:

from django.urls import path

from . import views


urlpatterns = [
    # Usar una cadena vacía para que sea la URL de inicio.
    path("", views.index, name="index")
]

7. En el archivo myproject/urls.py (¡que no es lo mismo que myapp/urls.py!) probablemente nos encontremos con algo como:

from django.contrib import admin
from django.urls import path

urlpatterns = [
    path('admin/', admin.site.urls),
]

Agregar las URL definidas por nuestra aplicación:

from django.contrib import admin
from django.urls import path, include

urlpatterns = [
    path('admin/', admin.site.urls),
    path("", include("myapp.urls"))
]

7. Iniciar el servidor de desarrollo de Django:

(env) $ python manage.py runserver

(env) > python manage.py runserver

8. Visitar http://127.0.0.1:8000/ y ver el resultado de nuestra vista:

"Hola, mundo" en Django

¡Eso es todo! Ya tenemos un proyecto de Django completamente configurado para empezar a desarrollar.

Curso online 👨‍💻

¡Ya lanzamos el curso oficial de Recursos Python en Udemy! Un curso moderno para aprender Python desde cero con programación orientada a objetos, SQL y tkinter en 2024.

Consultoría 💡

Ofrecemos servicios profesionales de desarrollo y capacitación en Python a personas y empresas. Consultanos por tu proyecto.

Deja una respuesta