很久没有更新博客了,也有段时间没有持续性的学习了,感觉堕落了,今天继续开始学习吧
今天主要来学习一下在django下配置mysql的数据库和使用admin用户管理数据库
1、在project中的settings文件中设置为哪个app创建数据库,在这个例子中,我们为alex_app01来创建数据库,按照图示中修改settings文件
2、在project的settings文件中配置数据库,因为django默认是sqlite这个自带数据库;其实在实际的生成中,django+mysql才是最常见的搭配,所以我们这里要配置django的
数据库为mysql,按照图示的方式修改settings配置文件
3、在上面的例子中,我们可以看到,数据库的引擎修改为mysql,数据库的名字为“mydjango”,这里我们就需要先在mysql中创建这个数据,我这里已经创建了这个数据库,我们可以查看下
如果没有创建,可以用下面的方法创建数据库,这里要注意,charset utf8是为了让这个数据库支持中文
4、然后我们要在对应的app中model文件创建数据库的表,这里需要注意,一个类对应一张表
先创建一个作者表
在创建一个图书表
最后在创建一个出版社的表
这里我们仔细观察一下这里,在图书表中
ManyToManyField的意思是多对多的意思,就是一个作者可以写多本书,一个书可以有多个作者
ForeignKey的意思是一对多的意思,就是一个出版社可以出版多本书,但是一本书,只有一个出版社 5、在app的admin文件中设置admin用可以管理这3张表
6、创建admin的用户,用下面的命令创建admin的用户,这里可以设置用户名和密码
7、然后生成数据库的配置文件
根据配置文件生成表
8、这个时候我们就查看我们创建的数据库中的表了
这个时候我们就可以登陆django,使用admin用户管理和创建表了
漏了一条,因我们这里是python3,在django中,管理mysql默认用的mysqldb,但是mysqldb不支持python3,所以我们要把mysqldb替换为python3支持的pymysql
在project中的init.py文件中做如下的修改就可以了
最后在补充一条,这里就会实现在django的数据库中显示英文中文,默认是这样的,默认会显示book,但是我们用这样搞就会显示为“书”