测试。如何自动将多个带外键的对象添加到数据库?
如何自动将多个带外键的对象添加到数据库中?
我需要这样做是为了测试(看看应用程序如何处理多个数据)
class Document(models.Model):
user = models.ForeignKey(User)
content = models.CharField(max_length=255)
add_time = models.DateTimeField()
我需要创建十个示例用户(User
),每个用户必须有五十个文档(Document
)
4 个回答
1
使用inline-formset这个功能,你可以添加任意数量的表单。
2
I need to create ten sample users (User) and each of them must have fifty documents (Document)
from mixer.backend.django import mixer
users = mixer.cycle(10).blend(User)
documents = mixer.cycle(50).blend(Document, user=mixer.sequence(*users))
试试使用 Mixer 这个工具吧。
2
听起来这正是 FactoryBoy
的用武之地。它可以帮助你轻松创建相关的对象,特别是通过使用 SubFactories
。
另外,post_generation
这个钩子在 这个回答中有展示,应该会对你很有帮助。