Rails 3:如何将模块添加到模型中



我的 Rails 3 应用程序中有一个用户模型,它变得越来越大。我想提取一堆与订阅计费相关的函数并将它们放在一个模块中。

这是我第一次尝试编写模块,我尝试的第一件事就是使用测试方法创建一个最小的模块,看看它是否有效。

我创建了/lib/modules目录并将其添加到我的自动加载路径中。然后我在该目录中创建了文件recurly_extensions.rb。该文件如下所示:

Module RecurlyExtensions
    def foobar
        "This works."
    end
end

然后我把它添加到我的用户模型中:

include RecurlyExtensions

然后,我尝试加载 rails 控制台以测试是否可以在用户实例上调用.foobar。但是,控制台不会加载。

我收到此错误消息:

/Users/Andrew/.rvm/gems/ruby-1.9.2-p0/gems/activesupport-3.0.5/lib/active_support/dependencies.rb:454:in `load': /Users/Andrew/Rails/fourth_env/lib/modules/recurly_extensions.rb:7: syntax error, unexpected keyword_end, expecting $end (SyntaxError)

所以,它说我在某个地方错过了end,但我没有看到它。

谁能帮助我了解如何正确设置要包含在 Rails 模型中的模块?谢谢!

您应该

Module替换为module

相关内容

  • 没有找到相关文章

最新更新