Creación de proyectos Django, uso del modelo.

Crea un proyecto Django
django-admin startproject name
Crear sub-aplicación
python manager.py startapp name

Crear proyecto

Cuando se utiliza el marco Flask, necesitamos crear y organizar manualmente el directorio del proyecto del proyecto.

En django, el directorio del proyecto del proyecto puede ayudarnos a crear con la ayuda de los comandos proporcionados por django.

1>. Crear

El comando para crear un proyecto es:

django-admin startproject 工程名称
  • Por ejemplo: si desea crear un proyecto llamado demo en el directorio de código del escritorio, puede ejecutar el siguiente comando:

    cd ~/Desktop/Code
    django-admin startproject bookmanager
    

Después de la ejecución, habrá un nuevo directorio llamado bookmanager, que es el directorio del proyecto recién creado.

2>. Descripción del directorio del proyecto

Ver el directorio del proyecto creado, la estructura es la siguiente
Inserte la descripción de la imagen aquí

  • El directorio con el mismo nombre que el proyecto, aquí es bookmanager.

  • settings.py es el archivo de configuración general del proyecto.

  • urls.py es el archivo de configuración de URL del proyecto.

  • wsgi.py es una entrada de servidor web compatible con WSGI.

  • manage.py es un archivo de gestión de proyectos, a través del cual gestionar proyectos.

3>. Ejecute el servidor de desarrollo

En la etapa de desarrollo, para poder obtener una vista previa rápida del efecto de desarrollo, django proporciona un servidor web liviano escrito en Python puro, que solo se usa en la etapa de desarrollo.

Ejecute el comando del servidor de la siguiente manera:

python manage.py runserver ip:端口

"或:"

python manage.py runserver

可以不写IP和端口,默认IP是127.0.0.1,默认端口为8000。

Después del inicio, se puede ver la siguiente información:

Inserte la descripción de la imagen aquí
Ingrese la URL "127.0.0.1:8000" en el navegador para ver el efecto.

Inserte la descripción de la imagen aquí

  • Django funciona en modo de depuración de forma predeterminada. Si agrega, modifica o elimina archivos, el servidor se reiniciará automáticamente.

  • Presione ctrl + c para detener el servidor.


Crear sub-aplicación

En las aplicaciones web, generalmente hay algunos módulos de funciones empresariales que se pueden reutilizar en diferentes proyectos, por lo que en el desarrollo, el proyecto generalmente se divide en diferentes módulos de subfunciones, y cada módulo de funciones se puede mantener relativamente independiente Cuando necesite usar un módulo de función específico en otros proyectos de ingeniería, puede copiar todo el código del módulo para lograr la reutilización.

En el marco Flask, hay un concepto similar al módulo de aplicación de subfunción, a saber, Blueprint.

La vista de escritura de Django se coloca en la sub-aplicación.

1>. Crear

En Django, la creación de un directorio de módulos de sub-aplicación aún puede ser operada por comandos, a saber:

python manage.py startapp 子应用名称

manage.py es el archivo de administración generado automáticamente cuando se crea el proyecto anterior.

Por ejemplo, en el proyecto bookmanager que acaba de crear, si desea crear un módulo de sub-aplicación de libro de usuario, puede ejecutar:

cd ~/Desktop/code/book

python manage.py startapp book

Después de la ejecución, puede ver un subdirectorio llamado libro en el directorio del proyecto.

2>. Descripción del directorio de sub-aplicación

Ver el directorio del proyecto en este momento, la estructura es la siguiente:

Inserte la descripción de la imagen aquí

  • El archivo admin.py está relacionado con la configuración del sitio de administración en segundo plano del sitio web.

  • El archivo apps.py se usa para configurar información sobre la sub-aplicación actual.

  • El directorio de migraciones se utiliza para almacenar archivos de historial de migración de base de datos.

  • Los usuarios del archivo Models.py guardan clases de modelo de base de datos.

  • El archivo tests.py se usa para desarrollar casos de prueba y escribir pruebas unitarias.

  • El archivo views.py se usa para escribir vistas de aplicaciones web.

3>. Registrarse e instalar sub-aplicaciones

Aunque el archivo de directorio de la sub-aplicación creado se coloca en el directorio del proyecto, pero el proyecto django no puede usar la sub-aplicación directamente de manera inmediata, debe registrarse e instalarse antes de poder usarse.

En el archivo de configuración del proyecto settings.py, el elemento INSTALLED_APPS guarda las sub-aplicaciones que se han registrado e instalado en el proyecto. INSTALLED_APPS en el proyecto inicial es el siguiente:

Inserte la descripción de la imagen aquí

El método para registrar e instalar una sub-aplicación es agregar la clase Config en el archivo de información de configuración apps.py de la sub-aplicación a la lista INSTALLED_APPS.

Por ejemplo, para agregar la sub-aplicación de libro recién creada al proyecto, puede agregar ' book.apps.BookConfig ' en la lista INSTALLED_APPS .

Inserte la descripción de la imagen aquí



El modelo

Consejos para usar Django para el desarrollo de bases de datos:

  • El modelo en el patrón de diseño MVT es específicamente responsable de interactuar con la base de datos. Correspondencia (models.py)

  • Debido a que el marco ORM está incrustado en el Modelo, no hay necesidad de programación directa orientada a la base de datos.

  • En su lugar, defina la clase de modelo, complete la adición, eliminación y modificación de la tabla de la base de datos a través de la clase de modelo y el objeto.

  • El marco ORM consiste en asociar las filas de la tabla de la base de datos con los objetos correspondientes y convertirlas entre sí, haciendo que la operación de la base de datos esté orientada a objetos.

Pasos para el desarrollo de bases de datos con Django:

  1. Definir la clase de modelo.

  2. Modelo de migración

  3. Operar la base de datos

1. Definir la clase de modelo.

Diseñe clases de modelos de acuerdo con la estructura de la tabla de libros:

  • Clase de modelo: BookInfo

  • Campo de nombre del libro: nombre

De acuerdo con la clase de modelo de diseño de estructura de tabla de caracteres:

  • Clase de modelo: PeopleInfo

  • Campo de nombre de personaje: nombre

  • Campo de género del personaje: género

  • Restricción de clave externa: libro

    外键要指定所属的模型类book = models.ForeignKey(BookInfo)
    

Descripción:

  • La relación libro-personaje es de uno a muchos. Puede haber múltiples héroes en un libro.

  • No es necesario definir el campo de clave primaria, se agregará automáticamente cuando se genere la tabla y el valor aumentará automáticamente.

Según el diseño de la tabla de la base de datos.

  • Defina la clase de modelo en models.py, heredada de models.Model

  • # models.py
    
    from django.db import models
    # Create your models here.
    # 准备书籍列表信息的模型类
    
    class BookInfo(models.Model):
        # 创建字段,字段类型...
        name = models.CharField(max_length=10)
    
    # 准备人物列表信息的模型类
    class PeopleInfo(models.Model):
        name = models.CharField(max_length=10)
        gender = models.BooleanField()
        # 外键约束:人物属于哪本书
        book = models.ForeignKey(BookInfo)
    

2>. Migración de modelo (migración de base de datos) (creación de tabla)


La migración de datos se refiere a la conversión de datos entre el tipo de almacenamiento, el formato y el sistema informático.

  • La migración de datos es necesaria cuando una organización decide utilizar un nuevo sistema informático o un sistema de gestión de datos que es incompatible con el sistema actual.

  • La migración de datos generalmente ha planificado la ejecución para completar una migración automática, liberando recursos humanos de tareas monótonas. Es necesario cuando una organización o individuo cambia el sistema informático o se actualiza a un nuevo sistema.

数据库迁移主要分为热迁移和冷迁移:

热迁移是将内存数据和硬盘数据同步进行迁移。
热迁移的优势在于其对用户业务的影响是非常小的;
热迁移对内存数据进行了迁移,用户业务应用对其是无感知的。
而缺点是热迁移的过程是不可中断的,整个操作过程相对复杂。

冷迁移就是在关机迁移。
优势是整个冷迁移过程的操作简单,一般为自动化操作。
但其缺点是该方式不支持内存数据的保存,容易导致内存数据的丢失。

La migración se completa en dos pasos:

  • Generar archivo de migración: generar una declaración para crear una tabla basada en la clase de modelo

    python manage.py makemigrations
    
  • Realizar la migración: cree una tabla en la base de datos basada en la declaración generada en el primer paso

    python manage.py migrate
    
  • Antes de la migración

    Inserte la descripción de la imagen aquí

  • Después de la migración

    Inserte la descripción de la imagen aquí

  • Consejo: La base de datos sqlite3 se usa por defecto para almacenar datos

125 artículos originales publicados · Me gusta 260 · Visitas 120,000+

Supongo que te gusta

Origin blog.csdn.net/weixin_44685869/article/details/105334413
Recomendado
Clasificación