我想在Django模型中输入默认值。就像我创建了一个Role
模型
class Role(models.Model):
name = models.CharField(max_length=30)
description = models.CharField(max_length=100)
class Meta:
verbose_name = _('role')
verbose_name_plural = _('roles')
db_table = "role"
def __str__(self) :
return self.name
我想在每次迁移时输入默认值-makemigrations
和migrate
。
应输入示例数据-
name - Super Admin
Description - This is Super Admin
name - Admin
Description - This is Admin
name - Manager
Description - This is Manager
这将帮助我完成体力劳动。谢谢。
答案 0 :(得分:0)
我找到了方法。首先,我们将使用下面的行创建一个JSON
文件。注意-role
是应用程序名称。
python3 manage.py dumpdata --format=json role > initial_role_data.json
运行上述命令后,它将创建一个名为initial_role_data.json
的文件,其中将包含类似这样的数据-
[
{
"model":"role.role",
"pk":1,
"fields":{
"name":"Super Admin",
"description":"This is Super Admin"
}
},
{
"model":"role.role",
"pk":2,
"fields":{
"name":"Admin",
"description":"This is Admin"
}
},
]
请注意,我的database table
中已经有数据。您也可以手动创建类似于上面的json文件。
一旦生成json
文件,我们将加载数据。
python3 manage.py loaddata initial_role_data.json