django faker使用python faker为django模型和模板生成测试数据。
django-populate的Python项目详细描述
django-django-populate
=
=
=
<如何使用
>>
你可以使用pip::
configuration
~~~~~~~~~~~~~~
)
faker\u providers=none\faker.default\u providers被加载(all)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
*django populate*为django模型提供一个适配器,非常简单测试数据库的填充。
要用模型实例填充,请创建一个新的填充器类,
然后列出必须生成的所有模型的类和数量。要启动实际数据填充,
调用"execute()"方法。
下面的示例演示如何填充5个"game"和10个"player"对象:
有一个faker.generator.generator实例,配置如下:从myapp.models导入game,player
populator.addentity(game,5)
populator.addentity(player,10)
insertedpks=populator.execute()
populator使用名称和列类型猜测器用相关数据填充每一列。
例如,django populate使用"first name"格式化程序填充名为"firstname"的列,以及一个列,其中
a`datetime`实例使用了'datetime`.
因此得到的实体是一致的。如果django populate误解了列名,您仍然可以指定用于填充特定列的自定义
函数,使用"addentity()"的第三个参数:
populater.addentity(player,10,{
"得分":lambda x:populator.generator.randomint(01000),
"昵称":lambda x:populator.generator.email(),
})
populator.execute()
当然,django populate不会填充自动递增的主键。
此外,` django_populate.populater.populater.execute()`返回插入pks的列表,按类索引:
打印插入pks
{
<;类"faker.django.tests.player">;:[1、2、3、4、5、6、7、8、9、10],
<;类"faker.django.tests.game">;:[1、2、3、4,5]
}
在前面的示例中,"player"和"game"模型共享关系。因为"game"实体是先填充的,
faker足够聪明,可以将填充的"player"实体与填充的"game"实体之一关联起来。
作为myname%}{%fake'datetimebetween''-10d'作为m y date%}
{{myname'title}-{{mydate'date:"m y"}
{%load fakers%}
<;?xml version="1.0"encoding="utf-8"?>;
<;contacts>;
{%fake'randomint'10 20 as times%}
{%for i in 10 get_range%}
<;contact firstname={%fakestr'firstname%}"lastname={%fakestr'lastname%}"email={%fakestr'email%}"/>;
<;电话号码={%fakestr'电话号码'%}/>;
{%if'boolean''fake:25%}
<;出生日期={{'dateTimeThisCentury''fake'date:"d d d m y"}"place={%fakestr'city'%}/>;
{%endif%}
<;地址>;
<;街道{%fakestr'streetaddress'%}<;/street>;
<;city>;{%fakestr'city'%}<;/city>;
<;邮政编码>;{%fakestr'postcode'%}<;/postcode>;
<;state>;{%fakestr'state'%}<;state>;
<;address>;
<;公司名称="{%fakestr'company'%}"口号="{%fakestr'catchphrase'%}">;
{%if'boolean';fake:25%}
<;offer>;{%fakestr'bs'%}<;offer>;
{%endif%}
{%if'boolean';fake:33%}
<;导演姓名:"{%fakestr'name'%}"/>;
{%endif%}
<;公司>;
{%if'boolean';fake:15%}
<;详细信息>;
<;![CData[
{%fakestr'text'500%}
]>;
<;详细信息>;
{%endif%}
<;联系方式>;
{%endfor%}
<;联系方式>;
页面预览
~~~~~~~~~~~~~
在主应用程序中打开"url.py"并添加此url::
…
url(r'',include('django_populate.urls'),
…
)
http://127.0.0.1:8000/preview/显示伪造的浏览器窗口,对于屏幕截图很有用。
django_populate
`changelog`
----
更改日志已移动到"它们自己的文件<;changelog>;``.
_冒牌货:https://www.github.com/joke2k/faker/
…_变更日志:变更日志
…| pypi image::https://img.shields.io/pypi/v/django populate.svg
:target:https://pypi.python.org/pypi/django populate
:alt:pypi上发布的最新版本
。|管道图像::https://gitlab.com/solarliner/django populate/badges/develope/pipeline.svg
:目标:https://gitlab.com/solarliner/django populate/commits/develope
:alt:pipeline status
。|覆盖率图像::ttps://gitlab.com/solarliner/django populate/badges/develop/coverage.svg
:目标:https://gitlab.com/solarliner/django populate/commits/develop
:alt:覆盖率占总文件的百分比
| Windows构建图像:https://img.shields.io/appveyor/ci/solarliner/django-populate.svg?label=windows%20build
:目标:https://ci.appveyor.com/project/solarliner/django populate
:alt:windows上主分支的生成状态
…|下载图像::https://img.shields.io/pypi/dm/django populate.svg
:目标:https://pypi.python.org/pypi/django populate
:alt:每月下载
|许可证图像::https://img.shields.io/badge/license mit blue.svg
:目标:license.txt
:alt:package license
=
=
=
<如何使用
>>
你可以使用pip::
configuration
~~~~~~~~~~~~~~
)
*django populate*为django模型提供一个适配器,非常简单测试数据库的填充。
要用模型实例填充,请创建一个新的填充器类,
然后列出必须生成的所有模型的类和数量。要启动实际数据填充,
调用"execute()"方法。
下面的示例演示如何填充5个"game"和10个"player"对象:
有一个faker.generator.generator实例,配置如下:从myapp.models导入game,player
populator.addentity(game,5)
populator.addentity(player,10)
insertedpks=populator.execute()
populator使用名称和列类型猜测器用相关数据填充每一列。
例如,django populate使用"first name"格式化程序填充名为"firstname"的列,以及一个列,其中
a`datetime`实例使用了'datetime`.
因此得到的实体是一致的。如果django populate误解了列名,您仍然可以指定用于填充特定列的自定义
函数,使用"addentity()"的第三个参数:
populater.addentity(player,10,{
"得分":lambda x:populator.generator.randomint(01000),
"昵称":lambda x:populator.generator.email(),
})
populator.execute()
当然,django populate不会填充自动递增的主键。
此外,` django_populate.populater.populater.execute()`返回插入pks的列表,按类索引:
打印插入pks
{
<;类"faker.django.tests.player">;:[1、2、3、4、5、6、7、8、9、10],
<;类"faker.django.tests.game">;:[1、2、3、4,5]
}
在前面的示例中,"player"和"game"模型共享关系。因为"game"实体是先填充的,
faker足够聪明,可以将填充的"player"实体与填充的"game"实体之一关联起来。
作为myname%}{%fake'datetimebetween''-10d'作为m y date%}
{{myname'title}-{{mydate'date:"m y"}
{%load fakers%}
<;?xml version="1.0"encoding="utf-8"?>;
<;contacts>;
{%fake'randomint'10 20 as times%}
{%for i in 10 get_range%}
<;contact firstname={%fakestr'firstname%}"lastname={%fakestr'lastname%}"email={%fakestr'email%}"/>;
<;电话号码={%fakestr'电话号码'%}/>;
{%if'boolean''fake:25%}
<;出生日期={{'dateTimeThisCentury''fake'date:"d d d m y"}"place={%fakestr'city'%}/>;
{%endif%}
<;地址>;
<;街道{%fakestr'streetaddress'%}<;/street>;
<;city>;{%fakestr'city'%}<;/city>;
<;邮政编码>;{%fakestr'postcode'%}<;/postcode>;
<;state>;{%fakestr'state'%}<;state>;
<;address>;
<;公司名称="{%fakestr'company'%}"口号="{%fakestr'catchphrase'%}">;
{%if'boolean';fake:25%}
<;offer>;{%fakestr'bs'%}<;offer>;
{%endif%}
{%if'boolean';fake:33%}
<;导演姓名:"{%fakestr'name'%}"/>;
{%endif%}
<;公司>;
{%if'boolean';fake:15%}
<;详细信息>;
<;![CData[
{%fakestr'text'500%}
]>;
<;详细信息>;
{%endif%}
<;联系方式>;
{%endfor%}
<;联系方式>;
页面预览
~~~~~~~~~~~~~
在主应用程序中打开"url.py"并添加此url::
url(r'',include('django_populate.urls'),
…
)
http://127.0.0.1:8000/preview/显示伪造的浏览器窗口,对于屏幕截图很有用。
django_populate
`changelog`
----
更改日志已移动到"它们自己的文件<;changelog>;``.
_冒牌货:https://www.github.com/joke2k/faker/
…_变更日志:变更日志
…| pypi image::https://img.shields.io/pypi/v/django populate.svg
:target:https://pypi.python.org/pypi/django populate
:alt:pypi上发布的最新版本
。|管道图像::https://gitlab.com/solarliner/django populate/badges/develope/pipeline.svg
:目标:https://gitlab.com/solarliner/django populate/commits/develope
:alt:pipeline status
。|覆盖率图像::ttps://gitlab.com/solarliner/django populate/badges/develop/coverage.svg
:目标:https://gitlab.com/solarliner/django populate/commits/develop
:alt:覆盖率占总文件的百分比
| Windows构建图像:https://img.shields.io/appveyor/ci/solarliner/django-populate.svg?label=windows%20build
:目标:https://ci.appveyor.com/project/solarliner/django populate
:alt:windows上主分支的生成状态
…|下载图像::https://img.shields.io/pypi/dm/django populate.svg
:目标:https://pypi.python.org/pypi/django populate
:alt:每月下载
|许可证图像::https://img.shields.io/badge/license mit blue.svg
:目标:license.txt
:alt:package license