gpt4 book ai didi

json - 如何在 Django 中使用多对多关系加载 fixtures.json

转载 作者:行者123 更新时间:2023-12-05 06:59:14 26 4
gpt4 key购买 nike

假设您必须创建一个数据库,用于存储图书馆的所有图书和世界各地的所有作者。每本书都在名为 books.json 的文件中,每个作者都在名为 authors.json 的文件中然后,您想在这些表之间创建一个链接,其中一本书可以有一个或多个作者。我所做的是创建所需的模型,然后加载 authors.json,然后当我尝试加载 books.json 时出现错误:django.core.serializers.base.DeserializationError: Problem installing fixture '/workspace/libray/books/fixtures/books.json':

class book(models.Model):
name =models.CharField(max_length=254, blank=True, null=True, on_delete=SET_NULL)
authors = models.ManyToManyField(author)



class authors(models.Model):
name = models.Charfield(max_length=100, blank=True, null=True, on_delete=SET_NULL)


books.json
[
{
"pk":1,
"model":books.book,
"fields":{
"name":"Book1",
"authors":[1,2,3]
}
},
...
]

authors.json
[
{
"pk":1,
"model":books.author,
"fields":{
"name":"Author1",
}
},
...
]

当模型之间存在M2M关系时,如何正确加载一些fixture。

最佳答案

首先在模型中添加一些测试数据,然后运行 ​​python manage.py dumpdata myapp > somefile.json

然后瞧,你就有了夹具模板。

关于json - 如何在 Django 中使用多对多关系加载 fixtures.json,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64451912/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com