Saltar al contenido principal

Iniciar aplicación

¿Qué es una aplicación en Django?

las aplicaciones en Django son módulos que contienen código para manejar una parte específica de la funcionalidad de un proyecto. Por ejemplo, una aplicación puede manejar la autenticación de usuarios, otra puede manejar la administración de contenido, etc.

Crear una aplicación

para crear una aplicación en Django, ejecuta el siguiente comando:

python manage.py startapp myapp

lo que realizará el comando es crear un nuevo directorio llamado myapp con la siguiente estructura:

myapp/
__init__.py
admin.py
apps.py
migrations/
__init__.py
models.py
tests.py
views.py

a lo que se suma el paso anterior de crear un proyecto, la estructura de tu proyecto se verá de la siguiente manera:

mysite/
manage.py
mysite/
__init__.py
settings.py
urls.py
asgi.py
wsgi.py
myapp/
__init__.py
admin.py
apps.py
migrations/
__init__.py
models.py
tests.py
views.py

Registrar la aplicación en el proyecto

para que Django reconozca la aplicación que acabas de crear, debes registrarla en el archivo INSTALLED_APPS en el archivo settings.py de tu proyecto:

# settings.py

INSTALLED_APPS = [
...
'myapp',
]

También recomiendo que importes la librería os para usar media y static files:

# settings.py

import os
Static_URL = '/static/' # URL para archivos estáticos
Media_URL = '/media/' # URL para archivos multimedia
Media_ROOT = os.path.join(BASE_DIR, 'media') # Directorio donde se guardarán los archivos multimedia

otra configuracion que recomiendo es aplicar la librería dotenv para manejar las variables de entorno:

pip install python-dotenv
# settings.py

from dotenv import load_dotenv
load_dotenv()

SECRET_KEY = os.getenv('SECRET_KEY') # Variable de entorno para la clave secreta

esta clave estara en un archivo .env en la raiz de tu proyecto:

SECRET_KEY=clave_secreta

asi se veria tu proyecto con la configuracion de las variables de entorno:

mysite/
manage.py
mysite/
__init__.py
settings.py
urls.py
asgi.py
wsgi.py
myapp/
__init__.py
admin.py
apps.py
migrations/
__init__.py
models.py
tests.py
views.py
.env

Configurar urls de la aplicación

para que Django pueda acceder a las vistas de tu aplicación, debes configurar las urls de la aplicación en el archivo urls.py de tu proyecto:


# urls.py

from django.contrib import admin
from django.urls import path, include # Importar include
from django.conf import settings # Importar settings
from django.conf.urls.static import static # Importar static

urlpatterns = [
path('admin/', admin.site.urls),
path('', include('myapp.urls')), # Incluir las urls de la aplicación
]+ static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) # agregar la configuración de archivos multimedia

ahora podemos pasar al siguiente paso que es crear los modelos y vistas de la aplicación.