如何在Rails视图中使用faker gem?

时间:2017-06-24 00:18:00

标签: ruby-on-rails faker

我安装了一个faker gem(我确定它不在dev / test中!)。我想在视图上生成几个随机引号。我想把它放在welcome / index中。

在welcome_controller中,我有:

require 'faker'

class WelcomeController < ApplicationController
  def index
    @faker_array = []
    5.times do |n|
      @faker_array.push(Faker::HitchhikersGuideToTheGalaxy.quote)
    end
  end

我尝试过调用它,但它给了我"#<NameError: uninitialized constant Faker...错误。

  <% @faker_array.each do |el| %>
    <li><%= el %></li>
  <% end %>

我还尝试创建名为list_generator.rb

的服务
require 'faker'

class ListGenerator
  def faker_hitchhiker_quote
    return Faker::HitchhikersGuideToTheGalaxy.quote
  end
end

并在欢迎索引视图中调用服务,例如:

<ul>
  <% 5.times do |el| %>
    <li><%= ListGenerator.new.faker_hitchhiker_quote %></li>
  <% end %>
</ul>

这样做仍然会给我#<NameError: uninitialized constant Faker::...错误。

有没有办法可以将Faker gem整合到我的视图中以生成随机引号?

1 个答案:

答案 0 :(得分:0)

根据自述文件:

  

注意:如果您收到未初始化的常量Faker :: [some_class]错误,则您的gem版本将落后于此处记录的版本。要确保您的gem是此处记录的gem,请将gemfile中的行更改为:

gem 'faker', :git => 'https://github.com/stympy/faker.git', :branch => 'master'

尝试这种方法。

相关问题