Django:模型层ORM,创建模型类,字段类型
官方文档:https://docs.djangoproject.com/zh-hans/3.2/ref/models/fields/
# models.py
from django.db import modelsclass Book(models.Model):title = models.CharField(max_length=50, default="", verbose_name="书名")price = models.DecimalField(max_digits=7, decimal_places=2, verbose_name="价格")info = models.CharField(max_length=100, default="", verbose_name="描述")
DATABASES = {# 'default': {# 'ENGINE': 'django.db.backends.sqlite3',# 'NAME': BASE_DIR / 'db.sqlite3',# }'default': {'ENGINE': 'django.db.backends.mysql','NAME': 'mysite','USER': 'root','PASSWORD': '1234','HOST': '127.0.0.1','PORT': '3306',}
}
C:\Users\520>cd..C:\Users>cd..C:\>cd program files\mysql\mysql server 8.0\binC:\Program Files\MySQL\MySQL Server 8.0\bin>mysql -uroot -p
Enter password: ****
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 23
Server version: 8.0.25 MySQL Community Server - GPLCopyright (c) 2000, 2021, Oracle and/or its affiliates.Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql> use mysite;
Database changed
mysql> show tables;
+----------------------------+
| Tables_in_mysite |
+----------------------------+
| auth_group |
| auth_group_permissions |
| auth_permission |
| auth_user |
| auth_user_groups |
| auth_user_user_permissions |
| django_admin_log |
| django_content_type |
| django_migrations |
| django_session |
| myapp_book |
+----------------------------+
11 rows in set (0.00 sec)mysql>
auto_now=True,更新时间,设置为每次修改的时间
auto_now_add=True,创建时间,设置为第一次创建的时间
default=“xxxx/xx/xx”,每次设置指定时间
https://docs.djangoproject.com/zh-hans/3.2/ref/models/fields/
# models.py
from django.db import modelsclass Book(models.Model):title = models.CharField(max_length=50, default="", verbose_name="书名")price = models.DecimalField(max_digits=7, decimal_places=2, verbose_name="价格")info = models.CharField(max_length=100, default="", verbose_name="描述")market_price = models.CharField(max_length=50, default="", verbose_name="市场价")class Author(models.Model):name = models.CharField(max_length=11, verbose_name="姓名")age = models.IntegerField(verbose_name="年龄")email = models.EmailField(verbose_name="邮箱")
mysql> show tables;
+----------------------------+
| Tables_in_mysite |
+----------------------------+
| auth_group |
| auth_group_permissions |
| auth_permission |
| auth_user |
| auth_user_groups |
| auth_user_user_permissions |
| django_admin_log |
| django_content_type |
| django_migrations |
| django_session |
| myapp_author |
| myapp_book |
+----------------------------+
12 rows in set (0.00 sec)mysql> desc myapp_author;
+-------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------+--------------+------+-----+---------+----------------+
| id | bigint | NO | PRI | NULL | auto_increment |
| name | varchar(11) | NO | | NULL | |
| age | int | NO | | NULL | |
| email | varchar(254) | NO | | NULL | |
+-------+--------------+------+-----+---------+----------------+
4 rows in set (0.00 sec)mysql>
在MySQL中,表名默认为:应用名_模型类小写
Django:模型层ORM,创建模型类,字段类型相关推荐
- django之七(模型层ORM相关)
ORM字段 常见字段 1.CharField(max_length,verbose_name=)) 2.AutoField(primary_key)BigAutoField(AutoField)- b ...
- Django–模型层orm查询
文章目录 Django–模型层orm查询 一.单表查询(增.删.改.查) 基本查询 下划线查询 二.外键字段(增.删.改.查) 一对多 多对多 三.多表查询 多表查询的方式 正反向的概念 基于对象的跨 ...
- django使用脚本orm创建数据
django使用脚本orm创建数据 1. 创建script文件夹,创建脚本文件script.py import os os.environ.setdefault("DJANGO_SETTIN ...
- 数据库字段类型、实体类字段类型、mapper文件jdbcType三者对应关系
数据库字段类型.实体类字段类型.mapper文件jdbcType三者对应关系: 数据库字段类型 实体类字段类型 mapper文件jdbcType bigint Long JdbcType.BIGINT ...
- Django框架——模型层单表操作、模型层多表操作、模型层常用和非常用字段和参数、模型层进阶
文章目录 1 模型层-单表操作 一 ORM简介 二 单表操作 2.1 创建表 1 创建模型 2 更多字段 3 更多参数 4 settings配置 5 增加,删除字段 2.2 添加表纪录 2.3 查询表 ...
- Django08-1:模型层(ORM)--聚合查询/分组查询/F与Q查询/开启事务/常用字段及参数/自定义字段/数据库查询优化
聚合查询 单独使用时,用aggregate 1.只要是跟数据库相关的模块 基本都在django.db.models里面 如果没有应该在django.db里面 2. 聚合查询通常配合分组使用 from ...
- django-模型类字段类型
小结 字段类型,自动增长 ? AutoField字段类型,布尔类型 ? BooleanField字段类型,空布尔类型 ? NullBooleanField字段类型,字符串 ? CharField(ma ...
- Access sql语句创建表及字段类型
创建一张空表: Sql="Create TABLE [表名]" 创建一张有字段的表: Sql="Create TABLE [表名]([字段名1] MEMO NOT NUL ...
- Java实体类字段类型与MySQL数据库字段类型的对应关系
序号 Java实体类类型 Java引入 MySQL字段类型 1 String java.lang.String varchar 2 String java.lang.String char 3 Str ...
- flask框架创建数据库定义字段类型和字段常用参数
1.字段类型 Integer int整型,普通整数,一般是32位 SmallInteger int 取值范围最小的整型,一般是16位 Big Integer int或long 不限制精度的整数 Flo ...
最新文章
- 转载《Data Guard Broker基础》
- 波卡链Substrate (5)托盘Pallets进阶
- 有时候明明没有问题的程序为什么通不过?
- springboot超详细教程_超详细便当袋教程 || 特殊时期,自己带饭最安心!
- linux删除文件夹和文件
- 不允许指针指向不完整的类类型_8.7 C语言动态内存分配与指向它的指针变量
- VB版双语对照制作助手
- Apache Shiro权限管理框架
- springboot通过各种不同类型参数获取容器中的bean工具类
- 合肥赛区结束,继续训练提升
- Opengl es2.0 学习笔记(十)VBO、IBO和FBO
- 用cmd 查看本机的IP地址
- 聊聊面试培训机构学员的感受
- 人,总要敢于直面自己的惨淡,才能挺直腰杆
- Your application has presented a UIAlertController (UIAlertController: 0x100b79
- 谈谈我的技术专家之路
- ping 延迟 linux,使用ping命令查看网络延迟--用Enki学Linux系列(7)
- html snippets怎么配置,Import HTML snippets in HAML?
- DataX Transformer 源码分析及 UDF 扩展与使用
- 基于双层优化的微电网系统规划设计方法matlab程序(yalmip+cplex)
热门文章
- 震惊!几道Python 理论面试题,Python面试题No18
- Python深度剖析贪吃蛇游戏的设计与实现
- PAT1105:Spiral Matrix
- 一个ip对应多个域名多个ssl证书配置-Nginx实现多域名证书HTTPS
- JavaScript 常用单词整理
- JavaScript全局变量的本质及页面共享问题
- .NET 对接JAVA 使用Modulus,Exponent RSA 加密
- Bootstrap系列 -- 17. 复选框checkbox和单选择按钮radio
- Linux不用来写代码,我使用过的Linux命令之:(冒号) - 啥也不做(除了……)
- python权限管理系统_Django 自定义权限管理系统详解(通过中间件认证)