Faker gem:如何设置最大值。长度/范围Company.name/Number.number?

Faker gem: How to set max. length / range for resp. Company.name / Number.number?

我使用 Faker gem 来播种某些数据。我怎样才能设置最大。假数字的长度 Company.name,如何设置假数字的范围?

name  = Faker::Company.name

这里我想包括最大长度,因为名称对最大长度有型号限制。 40 个字符。

code_id = Faker::Number.number

对于 code_id 我想要 1 到 50 的范围。我试过 code_id = Faker::Number.number(from=1, to=50) 但这似乎不正确,因为在播种时它产生了以下错误:

ArgumentError: wrong number of arguments (2 for 1)
/usr/local/rvm/gems/ruby-2.1.5/gems/faker-1.4.3/lib/faker/number.rb:4:in 'number'

我应该如何调整 Faker 以适应我的需要?

  1. 您可以使用 I18n 覆盖数据并添加您自己的短名称:

    faker:
       name:
        short_names: [Ben, Ava...]
    
  2. Faker::Number.between

名字你可以把生成的那个多余的部分去掉(你不在乎那里的半成品词吧?)

name = Faker::Company.name[0..40]

而对于数字你可以使用Faker::Number.between或直接使用核心ruby rand

rand(1..50)

您可以使用

Faker::Lorem.words(50);

它将return 50个字
https://github.com/Marak/faker.js/wiki/Basic-Random-Data