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

07 -模型层ORM

时间:2018-06-30 22:58:47      阅读:188      评论:0      收藏:0      [点我收藏+]

标签:pre   溢出   lis   row   HERE   date   import   tin   ken   

1、orm简介

 技术分享图片

技术分享图片

 

2、

技术分享图片

 

models.py

from django.db import models

# Create your models here.


class Book(models.Model):
    id = models.AutoField(primary_key=True)
    title = models.CharField(max_length=32, unique=True)
    state = models.BooleanField()
    pub_date = models.DateField()
    price = models.DecimalField(max_digits=8, decimal_places=2)   # 999999.00
    publish = models.CharField(max_length=22)                     # 10000000.00  溢出

 

 

C:\Windows\system32>mysql -uroot -proot

mysql> create database orm;      # 创建orm数据库
Query OK, 1 row affected (0.00 sec)

 

 

settings默认sqlite3数据库

技术分享图片

 

设置database为mysql 

DATABASES = {
    default: {
        ENGINE: django.db.backends.mysql,
        NAME: orm,            # 要连接的数据库,连接前需要创建好
        USER: root,           # 连接数据库的用户名
        PASSWORD: root,          # 连接数据库的密码
        HOST: 127.0.0.1,     # 连接主机,默认本级
        PORT: 3306,            # 端口 默认3306
    }
}

 

 

  (3)django调用的是pymysql

__init__.py

import pymysql

pymysql.install_as_MySQLdb()

 

技术分享图片

 

 注意3:如果报错的话

django.core.exceptions.ImproperlyConfigured: mysqlclient 1.3.3 or newer is required; you have 0.7.11.None

  

注意4: 如果想打印orm转换过程中的sql,需要在settings中进行如下配置:

LOGGING = {
    version: 1,
    disable_existing_loggers: False,
    handlers: {
        console:{
            level:DEBUG,
            class:logging.StreamHandler,
        },
    },
    loggers: {
        django.db.backends: {
            handlers: [console],
            propagate: True,
            level:DEBUG,
        },
    }
}  

 

技术分享图片

 

 

最后通过两条数据库迁移命令即可在指定的数据库中创建表 :

python manage.py makemigrations
python manage.py migrate

 

 

注意2:确保配置文件中的INSTALLED_APPS中写入我们创建的app名称

 技术分享图片

 

4

 

07 -模型层ORM

标签:pre   溢出   lis   row   HERE   date   import   tin   ken   

原文地址:https://www.cnblogs.com/venicid/p/9248852.html

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