前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【愚公系列】2021年12月 Python教学课程 33-Django框架之模型

【愚公系列】2021年12月 Python教学课程 33-Django框架之模型

作者头像
愚公搬代码
发布2022-12-01 09:56:36
5780
发布2022-12-01 09:56:36
举报
文章被收录于专栏:历史专栏

文章目录


一、模型类的定义

代码如下:

代码语言:javascript
复制
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)

1.字段及参数

CharField: .要求必须有参数 maxlength,限制该字段的最大字符数;

IntegerField :用于保存整数;

DecimalField :浮点数. 必须 提供两个参数:max_digits 总位数,decimal_places 小数位数;

DateField :日期字段,年月日;

DateTimeField :年月日时分秒;

对于日期字段需要注意的参数:

auto_now:每次操作改数据都会自动更新时间;

auto_now_add:新增数据的时候会将当前时间自动添加,后续的修改该字段不会自动更新。

EmailField:带有检查Email合法性的 CharField,不接受 maxlength 参数.

ForeignKey:外键字段,设置在 '一对多’中’多’的一方;

OneToOneField:一对一字段,用来扩展已有字段

ManyToManyFiled:多对多字段,建议设置在查询频率较高的表中

二、数据库配置

代码语言:javascript
复制
DATABASES = {
    'default': {          
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'blog',    #你的数据库名称 数据库需要自己提前建好
        'USER': 'root',   #你的数据库用户名
        'PASSWORD': '', #你的数据库密码
        'HOST': '', #你的数据库主机,留空默认为localhost
        'PORT': '3306', #你的数据库端口
    }
}

三、模型迁移 (建表)

迁移由两步完成 :

生成迁移文件:根据模型类生成创建表的语句

代码语言:javascript
复制
python manage.py makemigrations

执行迁移:根据第一步生成的语句在数据库中创建表

代码语言:javascript
复制
python manage.py migrate

迁移之后出现0001的文件,就代表数据库迁移完成,数据库有对应的表

四、单独的py文件测试ORM操作需要配置的参数

代码语言:javascript
复制
import os

if __name__ == "__main__":
  os.environ.setdefault("DJANGO_SETTINGS_MODULE", "day58.settings")
  import django  django.setup()
  from app01 import models  # 这一句话必须在这下面导入
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-04-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 文章目录
  • 一、模型类的定义
    • 1.字段及参数
    • 二、数据库配置
    • 三、模型迁移 (建表)
    • 四、单独的py文件测试ORM操作需要配置的参数
    相关产品与服务
    数据库
    云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档