作者热门文章
- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
我在 lib/sms.rb
中定义了一个名为 Sms
的模块。在其中,我有一个名为 Sms.chunk
的方法,它使用 word_wrap
方法。这是 TextHelper 库的一部分,所以我将它包含在模块的开头 include ActionView::Helpers::TextHelper
:
module Sms
include ActionView::Helpers::TextHelper
def Sms.chunk
...
word_wrap
...
我在 config/initializers/additional_libs.rb
中的 require "sms"
行初始化期间需要此模块
我还有一个名为 TWILIO_API 的 Grape API 类,我想在其中调用 Sms.chunk
。但是,当我这样做时,我得到了 undefined method
word_wrap' for Sms:Module`。我已尝试将 TextHelper 库包含在 TWILIO_API 类本身中,以及包含它的各种其他方式,但都没有成功。
我在这里做错了什么?
最佳答案
问题是 wrap_word是一个实例方法
,您从类方法Sms.chunk
中调用它。通过删除 Sms.
部分使其成为实例方法。例如,以下作品:
require 'action_view'
class Test
include ActionView::Helpers::TextHelper
def test_method
word_wrap('Once upon a time')
end
end
o = Test.new
p o.test_method # "Once upon a time"
关于ruby-on-rails - 尝试在模块中包含 Rails 帮助程序库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16007369/
我正在为我正在开发的软件寻找更新库。这是一个小软件,但我想为它注入(inject)一些不错的功能。其中之一是自动更新。我已经开发了 2 类库来为我完成这项工作,但我想要一个更强大的库,因为它缺少一些功
我是一名优秀的程序员,十分优秀!