Configuración inicial de un proyecto.
1. Crear un entorno virtual

python3 -m venv envEl comando anterior creará un directorio llamado env en el directorio actual, que contendrá un entorno virtual de Python.
2. Activar el entorno virtual

source env/bin/activateEl comando anterior activará el entorno virtual en sistemas Unix. En Windows, el comando es:
env\Scripts\activateEste comando tambien se puede dividir en 2 partes:
cd env/Scripts/
activatePara desactivar el entorno virtual, simplemente ejecute:
deactivate3. Instalar Django

pip install django==4.2El comando anterior instalará la última versión de Django en el entorno virtual.
4. Crear un proyecto de Django

django-admin startproject helloWorld .El comando anterior creará un nuevo directorio llamado helloWorld en el directorio actual, que contendrá un proyecto de Django.
5. Crear una aplicación de Django

python manage.py startapp helloEl comando anterior creará un nuevo directorio llamado hello en el directorio actual, que contendrá una aplicación de Django.
Recerda que puedes abrir el editor de código Visual Studio Code con el comando code .
6. Crear una vista

# hello/views.py
from django.http import HttpResponse
def index(request):
return HttpResponse("Hello, World!")7. Configurar las URL

# helloWorld/urls.py
from django.contrib import admin
from django.urls import include, path
urlpatterns = [
path("", include("hello.urls")),
path("admin/", admin.site.urls),
]8. Ejecutar el servidor de desarrollo

python manage.py runserverEl comando anterior ejecutará el servidor de desarrollo de Django. Para acceder al servidor, abra un navegador web y vaya a la dirección http://0.0.0.0:8000/.

Para detener el servidor de desarrollo, presione Ctrl + C en la terminal.
9. Crear una migración

python manage.py makemigrationsEl comando anterior creará una migración para los cambios en los modelos de la base de datos.
10. Aplicar una migración

python manage.py migrateEl comando anterior aplicará la migración a la base de datos.
12. Crear un superusuario

python manage.py createsuperuserEl comando anterior creará un superusuario para acceder al panel de administración de Django.
13. Acceder al panel de administración

Para acceder al panel de administración de Django, abra un navegador web y vaya a la dirección http://127.0.0.1:8000/admin/. Inicie sesión con el superusuario creado en el paso anterior.

Ejercicio
Crear un proyecto de Django llamado helloWorld con una aplicación llamada hello que muestre un mensaje de bienvenida en la página de inicio.
Ver solución
1python3 -m venv env
2source env/bin/activate
3pip install django==4.2
4django-admin startproject helloWorld .
5python manage.py startapp hello- 1
- Crear un entorno virtual.
- 2
- Activar el entorno virtual.
- 3
- Instalar Django.
- 4
- Crear un proyecto de Django.
- 5
- Crear una aplicación de Django.
# hello/views.py
1from django.http import HttpResponse
2def index(request):
3 return HttpResponse("Hello, World!")- 1
- Importar la clase HttpResponse de django.http.
- 2
- Crear una vista llamada index.
- 3
- Devolver un mensaje de bienvenida.
# helloWorld/urls.py
1from django.urls import path
2from hello import views
3urlpatterns = [
4 path("", views.index),
]- 1
- Importar la función path de django.urls.
- 2
- Importar el módulo views de la aplicación hello.
- 3
- Crear una lista de rutas.
- 4
- Asociar la ruta raíz con la vista index.
# helloWorld/urls.py
1from django.contrib import admin
2from django.urls import include, path
3urlpatterns = [
4 path("", include("hello.urls")),
5 path("admin/", admin.site.urls),
]- 1
- Importar el módulo admin de django.contrib.
- 2
- Importar la función include y la clase path de django.urls.
- 3
- Crear una lista de rutas.
- 4
- Incluir las rutas de la aplicación hello.
- 5
- Incluir las rutas del panel de administración.
1python manage.py runserver- 1
- Ejecutar el servidor de desarrollo.
Asignación
Desarrolla una aplicación web que muestre una lista de productos en la página de inicio. Cada producto debe tener un nombre, una descripción y un precio. Además, la aplicación debe tener un panel de administración donde se puedan agregar, editar y eliminar productos.