orm框架
之前,我们都是用SQL语句来操作数据库,MySQL有MySQL的语句,Oracle有Oracle的语句,比较多。并且,SQL语句比较难写。
那么,我们使用orm语法,它是一种对数据库增删改查的途径,比较简单,并能够通过orm框架,自动地将语句转变为连接的数据库的语句。
数据库配置
把django框架和MySQL数据库连起来。databases的代码可以使用live templetes生成,我的使用的start_mysql
定义表与字段
在每个app里面,都有一个models.py的文件,里面我们可以定义我们的数据表和字段。
括号里面,表示我们继承了这个父类。然后这个类的名字叫做User。整个类,就是定义了表和字段。表的名字,就叫做commen_user,前面是app的名字,后面是类名去掉大写。然后在类的里面,我们定义每个字段。
MySQL中定义字段,它不能为空,需要写not null。在django中,它就直接是默认为False,不能为空。unique默认FALSE,代表可以重复。blank是表单验证范畴,比如在表单中,用户名可以为空,那么就是blank=True。至于null,还是再百度把,不是特别理解。
数据库迁移和维护
除了create database之外,对数据库所有的操作都由orm框架来完成。上面models.py中定义的一个类,虽然说定义了表与字段,但是它并不会在数据库中自动创建一个commen_user的数据表。
需要通过python nanage.py makemigrations,来生成一个对数据库可执行的sql语句,相当于create table。然后通过python manage.py migrate,来执行这个SQL语句。