8

我的设置可能有问题:

irb(main):001:0> truncate("Once upon a time in a world far far away", :length => 17)
NoMethodError: undefined method `truncate' for main:Object
        from (irb):1
        from /usr/lib64/ruby/gems/1.9.1/gems/railties-3.2.8/lib/rails/commands/console.rb:47:in `start'
        from /usr/lib64/ruby/gems/1.9.1/gems/railties-3.2.8/lib/rails/commands/console.rb:8:in `start'
        from /usr/lib64/ruby/gems/1.9.1/gems/railties-3.2.8/lib/rails/commands.rb:41:in `<top (required)>'
        from script/rails:6:in `require'
        from script/rails:6:in `<main>'

看起来我不能使用任何文本助手(在 irb 和 rails 控制台中)。

我应该检查什么?

4

2 回答 2

24

helperRails 控制台通过变量公开辅助方法。因此,请改用这个:

helper.truncate("Once upon a time in a world far far away", :length => 17)

更多信息,请阅读37signals.com 上的这篇文章

于 2012-10-17T20:31:18.113 回答
3

在 Rails 控制台中输入以下行

include ActionView::Helpers

现在您的助手可以在整个 Rails 控制台会话期间访问,您可以继续...</p>

truncate("Once upon a time in a world far far away", :length => 17)

于 2015-07-09T15:31:57.203 回答