Rails 通过引擎制作 gem

Rails make a gem via engines

我想制作一个包含视图助手的 gem。我看这个 tutorial, 但是我遇到了一些问题。

如果您需要更多信息,请点击此处github

助手只会打印 Hello world!

app/helpers/google_code.rb

module GoogleCode
    def self.put_code
        content_tag(:p, "Hello world!")
    end
end

lib/google_prettify_rails.rb 需要 "google_prettify_rails/version"

module GooglePrettifyRails
    class Engine < ::Rails::Engine
    end
end

然后,我创建了另一个项目并安装了它,然后在视图中输入<%= put_code %>。但是,它抛出了这个错误

Couldn't find GooglePrettifyRailsHelper, expected it to be defined in helpers/google_prettify_rails_helper.rb

您的助手名称与助手所在文件的名称不匹配。只需将 app/helpers/google_prettify_rails_helper.rb 的第一行更改为 GooglePrettifyRailsHelper.