问题标签 [factory-boy]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
django - django:南方数据迁移的工厂男孩?
过去我们使用南数据迁移来更新表中的数据。
对于固定装置,我们希望将来使用 factory boy。
在南方数据迁移中,我只有orm
,并且不能导入真实模型。
是否可以在南方数据迁移中使用工厂男孩?
背景:我想在两个地方重用代码:
- 南方数据迁移
- 单元测试
python - 具有默认模糊字段的 Factoryboy Django 模型
我正在使用 factoryboy 来模拟一个像下面这样的模型,我想知道是否有一种更清洁的方法不涉及复制所有字段。
如果 factoryboy 只是推断模型字段的数字性质并且不需要工厂字段,那就太好了,例如
这可能吗?
python - 如何在调用 save() 之前让 FactoryBoy 的 ImageField 生成图像?
主题。
现在(Factory Boy ver. 2.4.1.)使用以下代码:
image
将None
在保存时间,因此如果Image
模型已save
被覆盖并且它与 一起运行image
,它将失败。这正是我的情况。
那么 - 如何在调用之前生成图像save
?
django - django 中非数据库字段的工厂男孩
我有一个 django 模型,它在保存时会触发在外部服务上创建帐户(与 django 没有任何关系)。不过,为了测试,我想禁止创建此帐户。我可以覆盖管理器的 save() 方法并从那里弹出 kwarg,或者我可以根据 Django 模型中的非数据库字段向模型添加一个非数据库字段属性,并在我的保存方法中检查它。
但是,当我尝试使用 factoryboy 创建对象时,它似乎会检查模型中的真实字段,由于属性不是字段而导致崩溃。
关于如何通过 factoryboy 传递诸如此类的额外参数的任何想法?
django - 安装 factory_boy 后,无法识别导入。
pip install factory_boy 似乎安装包没有问题。运行 pip freeze 显示:
但是,当我编辑测试以放入 import factory 或 import factory.django... 我得到结果:
我遵循了以下建议: 使用 pip 安装 factory_boy 时遇到问题 ,但没有结果。
不知道如何继续,任何帮助将不胜感激。
python - factory_boy UserFactory:没有这样的表:auth_user
我正在尝试创建一个UserFactory
,运行时出现此错误./manage.py test
:
这是我的factories.py
文件的样子:
有人知道这里发生了什么吗?
python - 使用 dango_get_or_create 时出现 KeyError
我正在使用带有以下工厂的 Factory Boy 2.4.1、Django 1.4.11 和 python 2.7:
每次我尝试使用工厂创建用户时,我都会得到:
我尝试将现有密钥放入该django_get_or_create
字段但没有成功。怎么了?
正如评论所说,出了什么问题,它应该是django_get_or_create = ('username',)
; 即类的键,而不是数据库的键。
python - 如何为 Factory Boy 指定数据库?
FactoryBoy 似乎总是在默认数据库中创建实例。但我有以下问题。
代码指向global
数据库。我还没有找到在工厂内指定数据库的方法:
python - 当我想要列表时,带有工厂男孩的 post_generation 给了 ManyRelatedManager
我显然是个笨蛋,我会在一开始就承认这一点。我正在使用以下工厂
当我创建它时,PDS=DataSheetFactory(product_contributors= (<tuple of users>))
我期望该字段中的用户列表product_contributors
,但我得到了一个django.db.models.fields.related.ManyRelatedManager
,因此测试将不起作用。当我按照这里的“常用食谱”进行操作时,我应该怎么做?
澄清一下,我问的是如何使用 factory boy 在模型的多对多字段中创建用户列表。我尝试了文档中的建议,我得到了一个ManyRelatedManager
,而不是一个列表,因此factory_boy
生成了不可用的实例。
python - 为什么在 Django 中的测试之间对象主键会增加?
使用SetUp()
方法,应该在每次测试之间清除和重新创建数据。那么,为什么 ids 从一个测试增加到另一个?这对我来说并不明显。
这样我就不能基于 id 进行测试(因为它们依赖于其他测试)。这就是为什么我想总是得到1
结果。
请注意,我对数据本身没有任何问题,旧数据从一个测试到另一个测试都被很好地清除了。问题只是关于ID。
我在这里读到了单元测试之间的 django 对象 ids 增量,该问题与数据库有关,而不是与 Django 相关,但是 Django 中有什么技巧可以改变它吗?