私は次のような簡単なことをしたいです:
rails c
> ping
=> pong
だから私は次のようなアクションを書くことができます:
defpingは「ポン」を終了します
しかし、どこに置くのですか?新しいモデルをインスタンス化せずに機能させるにはどうすればよいですか?application_helper.rbは機能せず、application_controller.rbも機能しません
特にRailsでカスタムメソッドを実行したい場合は、lib
ディレクトリ内のモジュールでヘルパーメソッドを定義できます。
# lib/custom_console_methods.rb
module CustomConsoleMethods
def ping
puts 'pong'
end
end
次に、application.rb
ファイルで、console
モジュールを含むブロックをに渡します。Rails::ConsoleMethods
# config/application.rb
module YourRailsApp
class Application < Rails::Application
console do
require 'custom_console_methods'
Rails::ConsoleMethods.include(CustomConsoleMethods)
end
end
end
システム全体で実行したい場合は、メソッドを~/.irbrc
ファイルに入れてください。実行するたびにロードされますirb
またはrails console
def ping
puts 'pong'
end
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加