用于自动为django模型创建数据的工具

时间:2011-04-12 22:23:00

标签: python django django-models django-admin

有没有办法自动为django模型创建数据?所以我创建了一个包含选项,文本字段,外键和所有内容的模型。是否有自动方式填充数据?我真的不在乎它们是否是垃圾值,只是它在模式中是有效的。

如果有办法指定某些模型并生成其他模型,那真的很酷。我知道'类别',不介意手动输入那些。如果已经有数据可以生成有效的“条目”并将现有数据用作外键,那就太好了。

6 个答案:

答案 0 :(得分:21)

我自己没有使用它,但django-autofixture看起来非常像你所追求的。

此网格中列出了其他类似的应用:https://www.djangopackages.com/grids/g/fixtures/

答案 1 :(得分:7)

django-dilla专为使用“垃圾邮件”数据填充您的django模型而构建。在定义一些设置后,以下内容直接从站点示例中获取。它甚至可以让您定义自己的'垃圾邮件发送者',以便以特定格式生成数据。

$ ./manage.py run_dilla --cycles=100
Dilla is going to spam your database. Do you wish to proceed? (Y/N)Y
Dilla finished!
    2 app(s) spammed 900 row(s) affected, 2498 field(s) filled, \
    502 field(s) ommited.

答案 2 :(得分:6)

http://www.generatedata.com/

这有一些非常好的通用字段类型,不是特定于Django的

答案 3 :(得分:1)

结帐django-mockups:https://github.com/sorl/django-mockups

它将自动为任何模型生成数据,包括外键和多对多。您可以按原样运行它,为其提供最大的关系深度,并且它将生成完全利用您的模型的数据。

您还可以编写自己的生成器和工厂,以便对关系进行细粒度控制,并生成特定于应用程序的数据,而不仅仅是随机数据。我刚刚在一个项目中使用它,它为我节省了几天的工作量来设置测试数据。

答案 4 :(得分:0)

Django-eadred旨在“生成样本数据”。

正如其文档所述

  

eadred允许您使用模型制造商,工厂,固定装置,随机种子以编程方式生成数据 - 无论您的需求是什么。

     

此外,eadred提供了库函数,使生成数据更容易。

答案 5 :(得分:0)

如果问题仍然存在,则可以尝试打包django-mimesis。 它提供根据字段类型用不同语言的虚拟数据填充数据库。您也可以使用指定的主题自动下载一些图片。并非总是效果很好,有时图片的主题不匹配。但是对我来说就足够了。