我使用Hautelook AliceBundle使用Faker生成具有真实世界数据的灯具。
在Alice中,我们可以使用YAML文件中的参数,如下所示:
parameters:
pwd_parameter: anything
My\UserEntity:
#generate 10 users with password equals to my parameter
user_{1..10}:
password: '<{pwd_parameter}>'
是否可以使用参数生成动态数量的灯具?
我正在寻找的解决方案是:
parameters:
pwd_parameter: anything
nb_users: 10
My\UserEntity:
#generate nb_users users with password equals to my parameter
user_{1..nb_users}: #<---THIS IS THE PROBLEM
password: '<{pwd_parameter}>
我试过了:
user_{1.. nb_users }
user_{1.. <nb_users> }
user_{1..<{nb_users}> }
user_{1..<{nb_users}> }
抛出:
警告:array_merge():参数#1不是数组
如何动态生成我的实体数量?
答案 0 :(得分:2)
由于固定装置yaml配置文件未与symfony参数合并,因此无法执行此类操作。
Nelmio\Alice\Fixtures\Fixture\RangeName
是用于验证和解析示例中的配置的类。
看一下RangeName::canBuild()
,您就会看到验证yaml密钥的正则表达式。
您可以创建自己的构建器方法,随机化插入的夹具行数。