Django sigue el patrón MTV (Modelo-Plantilla-Vista) para el desarrollo web. Aquí hay un desglose de cada componente:
Modelo: define su estructura de datos y maneja la interacción con la base de datos, lo que le permite almacenar y recuperar datos sin escribir consultas SQL manualmente.
Plantilla: Responsable de representar HTML y presentar los datos al usuario. Escribe HTML mezclado con Django Template Language (DTL) para mostrar contenido dinámico.
Ver: actúa como la capa de lógica empresarial. Conecta el modelo y la plantilla, maneja las solicitudes de los usuarios, interactúa con el modelo y devuelve una respuesta (a menudo HTML renderizado desde la plantilla).
Cómo funciona el ciclo de solicitud-respuesta de Django:
Paso 1: Crear una nueva aplicación en Django.
Una vez que hayas configurado Django (como se explicó en el artículo anterior), creemos una nueva aplicación en tu proyecto.
Ejecute estos comandos:
cd mysite python3 manage.py startapp core
Esto crea una aplicación llamada core dentro de su proyecto mysite. Su estructura de archivos ahora debería verse así:
. ├── core │ ├── admin.py │ ├── apps.py │ ├── __init__.py │ ├── migrations │ │ └── __init__.py │ ├── models.py │ ├── tests.py │ └── views.py ├── db.sqlite3 ├── manage.py └── mysite ├── asgi.py ├── __init__.py ├── settings.py ├── urls.py └── wsgi.py
Paso 2: registra tu aplicación en el archivo de configuración.
Para que Django conozca la nueva aplicación, debe agregarla a INSTALLED_APPS en mysite/settings.py:
INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'core', # add this line ]
Paso 3: Crear una vista básica.
Creemos una vista simple que devuelva un "¡Hola, mundo!" mensaje.
Abre views.py dentro de la aplicación principal y agrega el siguiente código:
from django.http import HttpResponse def learn(request): return HttpResponse("Hello, World!")
Paso 4: asignar URL a la vista.
Para acceder a esta vista a través de una URL, debe asignarla en el archivo core/urls.py. Cree este archivo si no existe y agregue lo siguiente:
from django.urls import path from . import views urlpatterns = [ path('learn/', views.learn, name='learn'), ]
A continuación, incluya las URL de la aplicación principal en el archivo principal mysite/urls.py:
from django.contrib import admin from django.urls import include, path urlpatterns = [ path('admin/', admin.site.urls), path('core/', include('core.urls')), # include the core app URLs ]
Ahora, si ejecuta el servidor y visita http://127.0.0.1:8000/core/learn/, debería ver "¡Hola, mundo!" desplegado.
Paso 5: Crear y renderizar una plantilla
from django.shortcuts import render def learn(request): context = {'name': 'Django'} return render(request, 'hello.html', context)
Esta vista ahora pasa una variable (nombre) a una plantilla llamada hello.html.
Paso 6: Crear un directorio de plantilla y un archivo HTML.
En su aplicación principal, cree una carpeta de plantillas y un archivo hello.html:
mkdir core/templates touch core/templates/hello.html
Dentro de hello.html, agrega el siguiente código HTML
Hello Template Hello, {{ name }}!
Cuando vuelvas a visitar la URL de aprendizaje, deberías ver "¡Hola, Django!" en el navegador.
Paso 7: Crear un modelo básico.
Creemos un modelo de publicación simple para almacenar publicaciones de blog.
En core/models.py, agregue el siguiente código:
from django.db import models class Post(models.Model): title = models.CharField(max_length=100) content = models.TextField() def __str__(self): return self.title
Este Postmodel tiene dos campos: título y contenido. El método __str__ garantiza que los objetos Post se muestren con sus títulos en el administrador o shell de Django
Paso 8: Aplicar el modelo a la base de datos.
Para crear la tabla correspondiente en la base de datos, ejecute estos comandos:
python3 manage.py makemigrations python3 manage.py migrate
Django ahora creará una tabla de base de datos para el modelo Post.
Al seguir estos pasos, habrás creado exitosamente una aplicación Django básica con un modelo, vista y plantilla. Ahora puede ampliar esta base agregando más funciones, como manejar la entrada del usuario, mejorar el diseño y hacer que la aplicación sea más interactiva.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3