首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为django中的开发生成数据

为django中的开发生成数据
EN

Stack Overflow用户
提问于 2012-08-26 19:44:59
回答 3查看 1.5K关注 0票数 2

为了能够看到我的django应用程序是什么样子,并在处理大量数据时执行,我希望以编程方式在数据库中生成数据。在django文档中,他们建议使用fixture或SQL语句,但我宁愿使用简单的python循环,通过使用django模型类来生成大量随机条目。

如何执行这样的脚本?我正在使用south进行数据库迁移,但即使在那里,似乎也不支持这种数据生成。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-08-26 19:56:10

你可以使用django-whatever (增强的django-any) -它很容易创建虚拟数据。

这是我的示例( *app_name*/management/commands/dummyitems.py):格式

代码语言:javascript
运行
复制
class Command(BaseCommand):
    args = '[count]'

    def handle(self, count=20, *args, **options):

        try:
            i = int(count)
        except ValueError:
            print u'n is to be a number!'
            sys.exit(1)

        for _ in xrange(i):
            # you can pass params explicitly
            m = any_model(MY_MODEL_CLASS, image=None)
            m.save()

因此,如果我需要100个虚拟项目,我会运行:

代码语言:javascript
运行
复制
$ python manage.py dummyitems 100
票数 3
EN

Stack Overflow用户

发布于 2012-08-26 19:49:01

直接回答你的问题--这样的脚本是作为custom management commands运行的,但使用像Northwind这样的预填充数据库会更简单。有关如何为django实现它的信息,请参阅this answer

票数 2
EN

Stack Overflow用户

发布于 2021-02-17 15:10:37

首先安装这个包https://pypi.org/project/model-mommy/,然后在django shell上运行这段代码。它会为项目中的所有模型生成假数据。

代码语言:javascript
运行
复制
from django.apps import apps
from django.conf import settings
from model_mommy import mommy


for app in settings.INSTALLED_APPS:
    try:
        app_models = apps.get_app_config(app).get_models()
    except:
        continue
    for model in app_models:
        try:
            mommy.make(model, _quantity=100)
        except:
            print('error')
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12129837

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档