3

使用带有 rails 的 faker gem 来生成一些假数据。当我使用 faker::lorem 时,输出包括字符串前面的破折号。

namespace :db do
  desc "Fill database with sample data"
  task populate: :environment do
    7.times do |l|
      line = Line.create!(sentence: Faker::Lorem.sentences(2))
    end
  end
end

像:

---
- Odit consectetur perspiciatis delectus sunt quo est.
- Tempore excepturi soluta aliquam perferendis.

知道为什么这个函数返回带有破折号的 Lorem 吗?最简单的方法将它们剥离?

4

1 回答 1

3

正如 Kevin 和 Deefour 在评论中提到的,Faker::Lorem 返回一个数组。

由于我们要求 Ruby 将其存储在字符串中,因此 Ruby 根据YAML的指南对其进行解释,这是一种在文本中表示数据结构的方式。

如果您遇到这个问题,最简单的解决方法是使用 Ruby 内置的数组到字符串转换方法.join(x),该方法将字符串 x 作为分隔符添加。

于 2013-06-02T01:42:28.263 回答