一键成为Django达人2之(models)模型层-数据库的创建。
上期我们简单制作了一个名字为new的基于Django框架的新项目。如果没有观看的童鞋可以点击
https://blog.****.net/weixin_42545347/article/details/80837664进行观看
很多朋友注意到我们上次虽然创建了数据库,但是我们并没有建立表,那么哦这次我们就来观看一下我们的Django框架如何通过python3带代码在数据库中建立我们所需要使用的表
首先打开我们的新项目new,然后进入index文件夹中的models.py文件
如果我们现在想要去创建一个存储用户信息的表
我们首先需要想清楚表中需要什么
假定我们需要存储用户名 , 密码 ,邮箱 手机号
我们创建一个类,并继承自models.Model
class User(mdels.Model):
uname = CharField(max_length=20)
upwd = CharField(max_length=20)
uemail = EmailField()
uphone = CharField(max_length=20)
OK 我们的第一个张创建表所需要的代码就完成了,这个文件的一个继承自models.Model的类映射到数据库中就是一张表。
我想现在,肯定有很多心急的朋友马上就去进入数据库找表了,然后发现什么都没有,
其实我们还有最后关键一步。
来,我们继续进入manage.py所在的目录运行终端。然后再命令行输入./manage.py makemigrations;这个命令可以帮助我们把数据库的改动提取出来。
然后我们继续在终端运行 ./manage.py migrate;就可以将改动映射到数据库了。
由于是第一次运行,我们所需要创建的表会比较多,很多都是系统自带的表,然后我们打开mysql
然后发现表目录多了一个User表。我们desc User 发现我们的表结构很清晰的展现在我们面前。
系统还帮助我们自动创建了自增长的id 帮助我们去使用,是不是很简单呢。
很多人发现了我们创建的用户名表怎么叫index_user呢 可不可以直接改成User呢,当然是可以的,我们
继续打开刚才的models.py文件 ,然后我们找到所在的类,在内部创建一个新的类class Mate:
并增加属性db_table=User
我们重新运行./manage.py makemigrations 然后./manage.py migrate;
我们继续打开我们的数据库。
我们的表名就变成User了 ,是不是很简单呢。