我知道可以为我自己的模型创建像initial_data.json
这样的灯具文件。我想为导入的django-allauth应用程序创建和使用的表创建类似的文件。
我试过了:
[
{
"model":"allauth.socialaccount.models.SocialApp",
"pk":1,
"fields":{
"id":"1",
"provider":"facebook",
"name":"facebook",
"client_id":"0011223344556677",
"key":"",
"secret":"012345678901234567890123456"
}
}
]
然而,最终会出现错误:
python manage.py syncdb
Creating tables ...
Installing custom SQL ...
Installing indexes ...
DeserializationError: Problem installing fixture 'initial_data.json':
Invalid model identifier: 'allauth.socialaccount.models.SocialApp'
答案 0 :(得分:6)
我发现here可以使用
填充模型django.contrib.sites.models.Site
中的表格
[
{
"model": "sites.site",
"pk": 1,
"fields": {
"domain": "myproject.mydomain.com",
"name": "My Project"
}
}
]
因此模型allauth.socialaccount.models.SocialApp
可能由以下人员填充:
[
{
"model":"socialaccount.socialapp",
"pk":1,
"fields":{
"id":"1",
"provider":"facebook",
"name":"facebook",
"client_id":"0011223344556677",
"key":"",
"secret":"012345678901234567890123456"
}
}
]
答案 1 :(得分:1)
完整夹具示例,使用django-allauth 0.19和Django 1.8进行测试:
[
{
"model": "sites.site",
"pk": 1,
"fields": {
"domain": "localhost",
"name": "localhost"
}
},
{
"model":"socialaccount.socialapp",
"pk":1,
"fields":{
"id":"1",
"provider":"facebook",
"name":"facebook",
"client_id":"0011223344556677",
"secret":"012345678901234567890123456",
"key":""
}
},
{
"model":"socialaccount.socialapp_sites",
"pk":1,
"fields":{
"id":1,
"socialapp_id":1,
"site_id":1
}
}
]