0

ビューでハイパーリンクを使用してカスタム コントローラー メソッドにアクセスする方法を学習しようとしています。link_toコントローラーに次のコードがあり、ビューのコマンドでこれにアクセスしたいと思います。launch_build_fileメソッドを機能させるために、ルートファイルで何かする必要があると思いますか? launch_build_fileメソッドをトリガーするには、ビューにどのコードをリストする必要がありますか?

class ReportsController < ApplicationController

  def index
  end

  def launch_build_file
    Process.spawn("ruby #{Rails.root}/lib/build.rb")
  end

end
4

2 に答える 2

1

ルート ファイルにレポート リソースがあるとします。そうでない場合は、名前付きルートを使用できます。

resources :reports do

 collection do
  get :launch_build_file
 end


end
#or
match '/reports/launch_build_file' => "reports#launch_build_file", :as => 'launch_build_file'

#If it's collection route 
link_to launch_build_file_reports_path
#or 
link_to launch_build_file_path
于 2012-11-02T15:15:24.440 に答える
1
link_to "foo", :controller => :reports, :action => :launch_build_file

または、名前付きルートを作成し、それを使用して URL を取得することもできます。

于 2012-11-02T15:14:16.257 に答える