我在我的Django项目中设置了fixture来填充我的数据库。这很有效,但有一个严重的限制:你不能创造很多东西。
理论上,您可以根据需要添加尽可能多的元素,但由于您需要逐个编写它们,因此您的数据库中不可能有20 000个项目。
我需要一个可以填充主键本身的工具,并且能够生成随机类型数据来填充灯具(例如:电子邮件,范围内的整数,范围内的日期,电话)。另一个很好的功能是在数据生成中设置功能规则。
有人知道在Django项目中执行此操作的方法(库,...)吗? 我看了https://github.com/joke2k/faker - 工具本身看起来不错,但没有与Django集成。
否则,我想我可以自己使用Faker编写它(因为编写一个夹具文件只包含json代),但我不想重新发明轮子:)
感谢。
答案 0 :(得分:2)
工厂男孩:https://factoryboy.readthedocs.org
它是一种灯具更换,非常适用于单元测试或以其他方式制作灯具数据。您可以编写挂接到模型中的类并生成已填充的模型实例,您可以构造它们以保存到数据库中。