【发布时间】:2018-02-16 09:45:11
【问题描述】:
我想为Faker 使用Factory Boy 和its support 从多个提供者生成字符串。例如结合prefix和name:
# models.py
from django.db import models
class Person(models.Model):
full_name = models.CharField(max_length=255, blank=False, null=False)
# factories.py
import factory
class PersonFactory(factory.Factory):
class Meta:
model = models.Person
full_name = '{} {}'.format(factory.Faker('prefix'), factory.Faker('name'))
但这似乎不起作用。例如:
>>> person = PersonFactory()
>>> person.full_name
'<factory.faker.Faker object at 0x7f25f4b09e10> <factory.faker.Faker object at 0x7f25f4ab74d0>'
我错过了什么?
【问题讨论】:
-
models.Person类的字段是什么?这是相关信息。 -
好的,我不确定它是否有帮助,但我现在已经添加了。
-
@PhilGyford:this 有效吗?您必须创建模型中不存在的
prefix和name类属性,然后将它们组合以创建full_name。我不确定这是否会导致错误,因为您原来的Person模型没有这些字段。 -
@Blender 谢谢,但我试过了,但由于你建议的原因确实出错了。
标签: python faker factory-boy