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

Rails Consoleは、helper変数を介してヘルパーメソッドを公開します。したがって、代わりにこれを使用してください。

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 に答える