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

ORM 模型层

时间:2018-01-25 00:17:10      阅读:125      评论:0      收藏:0      [点我收藏+]

标签:key   防止   tab   文件中   primary   自己   默认   模型   span   

一个模型就是一个单独的,确定的数据的信息源,包含了数据的字段和操作方法。通常,每个模型映射为一张数据库中的表

基本原则:

  • 每个模型在Django中的存在形式为一个python类
  • 每个模型都是django.db.modeks.Model的子类
  • 模型的每个字段(属性)代表数据表的某一列
  • Django将自动为你生成数据库访问API.

简单示例

下面的模型定义了一个“人”,它具有first_namelast_name字段:

from django.db import models

class Person(models.Model):
    first_name = models.CharField(max_length=30)
    last_name = models.CharField(max_length=30)

这里每个字段都是一个类属性,每个类属性表示数据表中的一个列。

上面代码,如下满原生SQL语句

CREATE TABLE app01_person (
    "id" serial NOT NULL PRIMARY KEY,
    "first_name" varchar(30) NOT NULL,
    "last_name" varchar(30) NOT NULL
);

注意:

表名app01_person 由django自动生成,默认格式为“项目名称+下划线+小写类名”。这个类名规则也可以重写

Django会默认自动创建自增主键id,(也可以自己指定主键)。

通常,我们都默认把模型编写都写在app下的models.py

创建了模型之后,在使用它之前,你需要先在settings文件中的INSTALLED_APPS 处,注册models.py文件所在的myapp。看清楚了,是注册app,不是模型,也不是models.py

当我们对模型进行增、删、改时,需执行python manage.py makemigrations   和 python manage.py migratee

模型字段fields

字段是模型中最重要的内容之一,也是唯一必须的部分。

字段在python中表现为一个类属性,体现为数据表中一个列。不要使用clean 、save 、delete 等django内置的模型API名字,防止命名冲突。

 

ORM 模型层

标签:key   防止   tab   文件中   primary   自己   默认   模型   span   

原文地址:https://www.cnblogs.com/jassin-du/p/8343527.html

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