22.模型的创建与映射
Posted 孤寒者
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了22.模型的创建与映射相关的知识,希望对你有一定的参考价值。
模型的创建与映射
共分三步走:
- 编写models.py;
- 对项目调用makemigrationgs命令;
- 让Django迁移项目。
第一部分——上实操!
(1)编写models.py:
(music/models.py文件)
模型告诉Django如何处理应用程序中存储的数据,在代码层面,模型就是一个类!对应数据库中的数据表!
from django.db import models
# Create your models here.
class User(models.Model):
id = models.AutoField(primary_key=True) #主键可以省略,Django默认会为我们加上一个名为id的主键,写的话就可以改主键的名字!
name = models.CharField(max_length=50) # CharField——字符串
age = models.IntegerField() # IntegerField——整数
def __str__(self):
"""
返回模型的字符串表示
我们告诉Django,默认应使用哪个属性来显示有关此模型的信息
Django调用方法__str__()来显示模型的简单表示
"""
return "name:%s, age:%s" %(self.name,self.age)
(2)对项目调用makemigrationgs命令:
命令makemigrations让Django确定该如何修改数据库,使其能够存储与我们定义的模型相关联的数据。输出表明Django创建了一个名为0001_initial.py的迁移文件,这个文件将在数据库中为模型User创建一个表。
命令后面可以跟app名称,表示指定对某个app的模型进行迁移,没写则所有app都执行(第一次的话不指定!)
输入以下命令即可:
makemigrationgs
(3)让Django迁移项目:
下面来应用这种迁移,让Django替我们修改数据库!
执行以下命令即可:
migrate
第二部分——分析数据库!
打开数据库我们能看到创建的名为“app名_模型名”的数据表,而其他的一些表格是django自动生成的。
附带两个温馨提示:
-
如果要删除表,那么可以去django模型中注释掉对应模型类,然后执行映射的命令,不要手动在命令行里面去删除!
-
如果要新增字段:就要先在模型类中添加对应字段的属性,并设置一个默认值,然后执行映射命令,将字段成功的映射到数据库中才算成功!
❤️可以扫码关注本人公众号——任何问题都可在公众号提问(定时有专人解答);并且不定时更新干货文。欢迎关注哦!❤️
以上是关于22.模型的创建与映射的主要内容,如果未能解决你的问题,请参考以下文章