1. ホーム
  2. ruby-on-rails

[解決済み】Ruby on Railsでコンソールからコントローラ/ビューヘルパーメソッドを呼び出すにはどうすればよいですか?

2022-03-23 16:48:14

質問

を読み込むと script/console コントローラやビューヘルパーメソッドの出力で遊びたいことがあります。

方法はありますか。

  • リクエストをシミュレートしますか?
  • コントローラインスタンスからメソッドを呼び出すか?
  • ヘルパーメソッドを、コントローラインスタンス経由あるいは別の方法でテストしますか?

解決方法は?

ヘルパーを呼び出すには helper オブジェクトを作成します。

$ ./script/console
>> helper.number_to_currency('123.45')
=> "R$ 123,45"

デフォルトでは含まれていないヘルパーを使いたい場合 (たとえば helper :all から ApplicationController )、ヘルパーを含めるだけです。

>> include BogusHelper
>> helper.bogus
=> "bogus output"

への対応としては コントローラ を引用しています。 ニックの という答えが返ってきます。

> app.get '/posts/1'
> response = app.response
# you now have a rails response object much like the integration tests

> response.body            # get you the HTML
> response.cookies         # hash of the cookies

# etc, etc