Una introducción de fondo
Django es un marco de aplicación web de código abierto escrito en Python. Adoptando el modelo marco de MTV , se utilizó originalmente para crear software CMS (sistema de gestión de contenidos).
Documentación oficial china: Documentación de Django | Documentación de Django | Django
Aplicación: Sistema de gestión de contenidos (noticias, vídeos)
Ruta de aprendizaje de Django
1.1 patrón de diseño MTV
Django adopta el patrón de diseño de software MVT, a saber, Modelo, Vista y Plantilla.
-
M se escribe como Modelo , que tiene la misma función que M en MVC: es responsable de interactuar con la base de datos y realizar el procesamiento de datos .
-
V se escribe como Vista , que tiene la misma función que C en MVC: recibe solicitudes, realiza procesamiento comercial y devuelve respuestas .
-
T se escribe como Plantilla , que tiene la misma función que V en MVC y es responsable de encapsular y construir el HTML que se devolverá .
Flujo de trabajo del modelo MVT
El controlador de enrutamiento reenvía la solicitud a la función de vista correspondiente para completar la lógica empresarial. La función de vista incrusta los datos obtenidos del modelo en el archivo de plantilla (html), los representa en una cadena de página y los devuelve al proceso del cliente.
Por eso nos centramos en cuatro partes al aprender Django: enrutador de URL + MVT
1.2 Crear un entorno virtual
1.2.1 Crear directamente
pip install django==3.2
-
Instalar el entorno Python
-
Instale la biblioteca del entorno virtual e ingrese en cmd:
instalación de pip virtualenv
-
Cree un entorno virtual, cambie al directorio donde se debe crear el entorno virtual en cmd y ejecute:
virtualenv -p python可执行文件 env_name virtualenv -p C:\python\python.exe venv1 virtualenv -p C:\python36\python.exe venv2
Active el entorno virtual: "venv2/Scripts/python.exe", "venv1/Scripts/activate", la entrada de la línea de comando requiere comillas dobles.
-
Active el entorno virtual, ingrese el directorio env_name/Scripts creado en el tercer paso en cmd y ejecute:
activar
Después de una ejecución exitosa, en cmd, la línea de entrada actual tendrá el prefijo (env_name)
En el estado actual, usar pip es instalar bibliotecas de terceros en un entorno virtual.
-
Salga del entorno virtual e ingrese en cmd:
desactivar
1.2.2 Anaconda3 creada directamente
conda create -n django_env python=3.9
pip install django==3.2
1.3 Crear proyecto Django
1.3.1 Crear stu_ms del proyecto
Una vez completado django-admin startproject stu_ms , descargue directamente la terminal en pycharm y use el comando para ejecutar django
# Ingrese al proyecto
cd stu_ms
# Sin agregar el puerto, el valor predeterminado es 8000.
python Manage.py RunServer 8090.
Acceda a la dirección que se muestra http://127.0.0.1:8090 en el navegador. Si el efecto es el siguiente, significa está instalado correctamente.
2. Conceptos básicos de Django
2.1 Comandos comunes
2.1.1 Crear proyecto
django-admin proyecto de inicio mi proyecto
2.1.2 Iniciar el proyecto
python Manage.py ejecuta el servidor 127.0.0.1 8000
python manage.py runserver
comando es el comando utilizado para iniciar el servidor de desarrollo Django, que le permite ejecutar su proyecto Django en un entorno de desarrollo local.
2.1.3 Creando aplicaciones
from django.contrib import admin
from django.urls import path
from myapp.views import timer
urlpatterns = [
# 请求路径和视图函数的映射关系 一旦请求路径和某一个path中的路径匹配成功则调用改path中的视图函数
path('admin/', admin.site.urls),
path("timer", timer),
]
python administrar.py nombre de la aplicación de inicio
python manage.py startapp 应用名
Es el comando utilizado para crear una nueva aplicación (App) en Django. Las aplicaciones son componentes de un proyecto Django que se utilizan para organizar y administrar código para diferentes funciones o módulos.
2.2 Probar rápidamente una aplicación Django
2.2.1 Crear subaplicaciones
python enable.py startapp profesor (nombre de la sub-aplicación)
El nombre de la subaplicación existirá como nombre de directorio en el futuro, por lo que no pueden aparecer símbolos especiales ni caracteres de varios bytes como el chino .
2.2.2 Rutas vinculantes
1 Ahora agregue el archivo de configuración en configuración:
INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles' , 'maestro', ]
2 demo/urls.py
Código:
from django.contrib import admin
from django.urls import path
from myapp.views import timer
urlpatterns = [
# 请求路径和视图函数的映射关系 一旦请求路径和某一个path中的路径匹配成功则调用改path中的视图函数
path('admin/', admin.site.urls),
path("timer", timer),
]
3 Agregar archivo de configuración
servidor de ejecución 0.0.0.0:8000
2.2.3 Ver funciones
def index(request):
return HttpResponse("<h1>HELLO Django</h1>")
Ver el efecto: http://127.0.0.1:8000/teacher/index/
Correspondencia:
2.2.4 Plantillas de construcción
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
span{
color: red;
}
</style>
</head>
<body>
<h1>当前时间:<span>{
{ now }}</span></h1>
<h1>{
{ user_name }}</h1>
</body>
</html>
view.py realiza ajustes sincrónicos:
Tenga en cuenta que el nombre del parámetro es coherente con el nombre del archivo HTML.
def index(request):
return render(request, 'index.html', {"now": "2023年 10月2号", "user_name": "李白"})
Ajuste de sincronización de settings.py :