Django进阶Model篇001

django 默认支持sqlite、mysql、oracle、postgresql数据库,像db2和sqlserver之类的数据库需要第三方的支持,具体详见:

https://docs.djangoproject.com/en/1.10/ref/databases/

环境准备

  • 使用命令行创建hello_django 项目与hello app
django-admin startproject hello_django
cd hello_django
django-admin startapp hello
  • 使用pycharm导入

MYSQL介绍与连接配置

1.mysql 引擎名称介绍:

django.db.backends.mysql

2.mysql 驱动程序介绍:

MySQLdb(mysql-python):https://pypi.python.org/pypi/MySQL-python/1.2.5

PyMySQL(纯python的mysql驱动-推荐) :https://pypi.python.org/pypi/PyMySQL

演示pymysql的使用

1.安装:

pip install pymysql

2.数据库连接配置 setting.py

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'hello_django_db',
        'USER':'root',
        'PASSWORD':'123456',
        'HOST':'',
        'PORT':'',
    }
}

3.创建数据库 hello_django_db

 4.编辑hello_django\__init__.py

import pymysql
pymysql.install_as_MySQLdb()

5.配置完毕,可运行项目

ORM机制

1.定义

对象关系映射(ORM),用于实现面向对象编程里不同类型系统的数据之间的转换。换句话说,就是用面向对象的方式去操作数据库的创建表,增加、修改、删除、查询等操作。

2.演示ORM生成的sql语句。

A、查看QuerySet中的query属性

def hello(request):
    user_list=User.objects.all()
    print user_list.query
    ...

B、配置日志系统,将sql显示到控制台,setting.py

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

更多详情见:https://docs.djangoproject.com/en/1.10/topics/logging/


***微信扫一扫,关注“python测试开发圈”,了解更多测试教程!***
原文地址:https://www.cnblogs.com/guanfuchang/p/6401332.html