码迷,mamicode.com
首页 > 其他好文 > 详细

对ORM的理解

时间:2020-03-14 23:33:36      阅读:65      评论:0      收藏:0      [点我收藏+]

标签:model   key   数据   映射   一个   关系   line   class   field   

1. 在面试中可能会问到这个问题,什么是ORM?

ORM是对象关系映射(Object Relational Mapping),简称ORM,或O/RM,或O/R mapping,是一种程序技术。

白话理解:就是把我们定义的对象(类)映射到对应的数据库的表上,所以ORM就是代码(软件)层面对于数据库表和关系的一种抽象。

2. Django与ORM之间的关系

Django中的model就是ORM的一个具体实现。

3. ORM在Django中的具体体现

简单来说,就是继承了Django的Model,然后定义了对应的字段,Django就会帮我们把Model对应到数据库的表上,Model中定义的属性,比如:

1 name = model.CharField(max_length=50,verbose_name="名称")

这就对应了一个表的字段。所以说一个Model也就对应关系数据库中的一张表,而对于有关联关系的Model,比如用到了ForeignKey的Model,就是通过外键关联的表。

举个例子:

1 class User(models.Model):
2     name = model.CharField(max_length=20)

上边的这个例子可以对应到数据库的表:

FieldTypeNullKeyDefaultExtra
id int(11) NO PRI NULL auto_increment
name varchar(20) NO   NULL  

对ORM的理解

标签:model   key   数据   映射   一个   关系   line   class   field   

原文地址:https://www.cnblogs.com/shangping/p/12494951.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!