django ORM操作

1、利用ORM是要在先创建数据库(利用sql语句)

我创建的数据库名为:django_mysql

2、修改django项目mysite中的setting.py文件,连接mysql,原来连接sqlite数据库的连接注释掉,连接mysql代码如下:

DATABASES={
'default':{
'ENGINE':'django.db.backends.mysql',
'NAME':'django_mysql', #你的数据库名称
'USER':'root', #数据库用户名
'PASSWORD':'lbyd2018', #数据库密码
'HOST':'', #数据库主机,留空默认为localhost
'PORT':'3306', #数据库端口
}
}
如果想在pycharm中查看生成sql语句的情况可以再setting文件中增加下面的配置

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

3、在mysite文件中的__init__中增加下面的代码

import pymysql
pymysql.install_as_MySQLdb()

4、在setting中配置对应的app项目,配置代码如下
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'login', #配置APP
]
5、在models.py中创建表(book表),代码如下:
class  Book(models.Model):
name=models.CharField(max_length=32)
price=models.IntegerField()
pub_date=models.DateField()
author=models.CharField(max_length=32,null=False)
6、在pycharm中的terminal或者cmd中执行如下代码:
python manage.py makemigrations 回车
python manage.py migrate
完成以后在数据库中就能够找到对应的book表了

经典学习网址:https://www.cnblogs.com/huchong/p/7819473.html


原文地址:https://www.cnblogs.com/woshinige/p/9969573.html