繁体   English   中英

使用子工厂时,Factoryboy返回错误的字段

Factoryboy returns wrong field when using subfactory

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我有一个表FilmWork,该表通过FilmWorkPerson表链接到表Perosn。 我正在尝试用假数据填充它们

我基本上使用了以下示例: https : //factoryboy.readthedocs.io/en/rbarrois-guide/recipes.html#many-to-many-relation-with-a-through

factory.py:

  class PersonTestFactory(DjangoModelFactory):
    class Meta:
        model = Person

    id = factory.Faker('uuid4')
    name = factory.Faker("sentence", nb_words=1)

 class FilmWorkTestFactory(DjangoModelFactory):
    class Meta:
        model = FilmWork

    id = factory.Faker('uuid4')
    title = factory.Faker("company")

 class FilmWorkPersoTestFactory(factory.django.DjangoModelFactory):
    class Meta:
        model = FilmWorkPerson

    movie_id = factory.SubFactory(FilmWorkTestFactory)
    person_id = factory.SubFactory(PersonTestFactory)

class FilmWorkPersoTestFactory2(FilmWorkTestFactory):
    membership = factory.RelatedFactory(
        FilmWorkPersoTestFactory,
        factory_related_name='movie_id',
    )

但是,当我调用FilmWorkPersoTestFactory2() ,它将返回错误: ['“Fisher, Smith and Ford” is not a valid UUID.'] 我认为它使用标题而不是ID,而且我不明白如何将其指向正确的字段。

问题暂未有回复.您可以查看右边的相关问题.
3 如何将FactoryBoy子工厂与子对象正确关联

当我使用常规数据库对象运行它们时,我有一些测试正在运行,但是由于我正在使用FactoryBoy工厂而被破坏了。 我想我理解他们为什么会损坏,但正在努力进行正确的设置。 这是我的工厂: 根据这个答案和其他示例,FactoryBoy应该在后台处理外键分配。 但是,当我尝试在固定 ...

6 使用factoryboy将字段保存为JSON

我正在尝试创建一个模型的实例,其中一个字段是JSONField 。 通过factoryboy创建模型实例时,我想将该字段保存为测试数据库中的JSONField。 在简单地将字段作为JSON传递时,它将以Unicode数据类型存储。 我坚持这个。 ...

7 Django + Factory Boy:使用Trait创建其他工厂对象

是否可以使用Traits(或Factory Boy中的任何其他东西)来触发其他工厂对象的创建? 例如:在User-Purchase-Product情况下,我想创建一个用户并告知该用户购买的产品具有以下简单的内容: 因为调用UserFactory , ProductFactory和Pur ...

8 使用 FactoryBoy 的 Maybe 声明而没有“decider”模型字段

是否可以在“决策者”未映射到实际模型字段的情况下使用FactoryBoy.Maybe ? 考虑以下模型: 这家工厂工作: 但是,如果我不希望“决策者”映射到MyModel的实际字段MyModel办? 就像是: 那家工厂不行。 (请注意,它曾经在此版本和此 PR之前工作。) 编辑 ...

10 使用Factory Boy进行Django测试时出错

我在我的Django项目中使用Factory Boy。 你可以向我解释一下我的错误:为什么我在运行'tests.py'时遇到错误 - 'ValueError:'“需要在字段”post“之前有一个值,然后才能使用这种多对多关系“。 这是我的代码: tests.py mode ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM