ORM的实质就是把python语句成SQL语句用
ORM相当于一个类,其映射关系为:
类 --> 数据表
对象 --> 数据行
属性 --> 字段
操作步骤:
1.手动创建数据库
2.在Django中设置连接数据库的相关参数(setting.py-->DATABASES )
#存放数据库相关配置
DATABASES = {
'default': {
#那个数据库
'ENGINE': 'django.db.backends.mysql',
#连接数据库的地址
'HOST':'127.0.0.1',
#端口
'PORT':3306,
#数据库名称
'NAME': 'XXX',
#用户名
'USER':'XXX',
#密码
'PASSWORD':'XXX'
}
3.连接数据库
使用pymysql(支持Python3)模块代替Django默认的MYSQLDB(不支持Python3)
我个人使用的是Pyhthon3.6.5
import pymysql
#替代MYSQLdb
pymysql.install_as_MySQLdb()
4.操作数据库
1).在models.py中定义一个类,这个类要继承models.Model
class UserInfo(models.Model):
#定义变量就可以修改表的字段
id = models.AutoField(primary_key=True)#创建自增的主键
username = models.CharField(null=False,max_length=20)#创建varchar类型的字段
password = models.CharField(null=False,max_length=20)#创建varchar类型的字段
2).在命令行输入命令,控制Django进行建表
#记录models.py文件中的变化
python manage.py makemigrations
#将models.py中的变化翻译成SQL语句带到数据库执行,只有执行这个命令,改变才会生效
python manage.py migrate
创建成功
5.下载一个Django->mysql的驱动
view ->tool buttons -> Ctrl+鼠标左键 DATABASES(setting.py)
点右边出现的Databases -> + -> Data Source ->Mysql ->Download
输入相应的参数 -> OK
连接完成
5.查询
1).在urls.py添加函数和路径的对应关系
2).写函数之前调用models
因为取值要调用models中的UserInfo类
3).定义新函数
"userinfo"是以字典的形式将值传到前台
在HTML文件中用一个循环的逻辑语句,将"userinfo"中所有的值都取出来
这样就可以将数据库数据显示在页面上
6.添加
1).定义函数和路径的对应关系
2).调用models
3).定义函数
7.删除
1).定义函数和路径的对应关系
2).定义函数
8.修改
1).定义函数和路径的对应关系
2).定义函数
该函数分为两个步骤:1.接收用户请求,跳转到修改信息的页面,并将用户向修改的相关信息的对象传到前台
2.用户在修改页面提交的信息,通过表单传到后台,然后将修改好的数据存入数据库,跳转回用户信息页面
小白的学习笔记,大佬勿喷!!