Django设计ORM模型步骤

一、定义模型类

1、创建应用:首先,在Django项目中创建一个应用,这是为了组织和管理与特定功能相关的模型、视图和模板等。可以使用python manage.py startapp myapp命令来创建应用,其中myapp是应用的名称。

2、定义模型:在应用的models.py文件中定义模型类。每个模型类都继承自django.db.models.Model,并且包含一些字段定义,这些字段对应于数据库表中的列。

python 复制代码
from django.db import models  

class Student(models.Model):  
    name = models.CharField(max_length=30)  
    age = models.IntegerField(default=18)  
    gender = models.CharField(max_length=10)

二、配置元数据

1、Meta :在模型类中,可以定义一个名为Meta的内部类,用于指定一些额外的元数据选项。例如,可以设置表名、排序规则、索引等。

python 复制代码
class Student(models.Model):  
    # 字段定义...  

    class Meta:  
        db_table = 'custom_student_table'

三、字段类型与选项

1、字段类型:Django提供了多种字段类型,如CharField、IntegerField、TextField、BooleanField、DateField、DateTimeField等,用于存储不同类型的数据。

2、字段选项:每个字段都可以指定一些选项,如max_length(最大长度)、default(默认值)、unique(唯一性)、blank(是否允许为空值)、null(是否允许为NULL值)等。

检查

bash 复制代码
python manage.py check

创建模型

bash 复制代码
python manage.py makemigrations

生成数据结构

bash 复制代码
python manage.py migrate
相关推荐
葫芦和十三17 小时前
图解 MongoDB 02|BSON:你以为存的是 JSON,其实是带类型的二进制
后端·mongodb·agent
葫芦和十三17 小时前
图解 MongoDB 01|文档数据库
后端·mongodb·agent
陈随易19 小时前
VSCode的Copilot扩展支持接入DeepSeek,Kimi了!
前端·后端·程序员
我不是外星人21 小时前
有了 Harness Engineering ,真的还需要研发工程师吗?
前端·后端·ai编程
candyTong21 小时前
RTK 技术原理:一次典型会话里,80% 上下文是怎么省下来的
javascript·后端·架构
Rust研习社1 天前
组合真的优于继承吗?为什么 Rust 和 Go 都拥抱组合舍弃继承?
后端·rust·编程语言
IT_陈寒1 天前
JavaScript的闭包把我坑惨了,说好的内存会自动回收呢?
前端·人工智能·后端
CaffeinePro1 天前
Pydantic深度使用:数据校验、枚举、ORM映射
后端·fastapi
Chenyiax1 天前
从 Chat 到 Responses:OpenAI API 抽象为什么变了?
后端
MariaH1 天前
Koa和Express的区别
后端