I am new to ruby on rails and trying to build an internal site to manage several ruby scripts. What I am trying to accomplish; create web page where an user clicks on a link (Execute Analyzer) to execute ruby script (runs in the background - FitAnalyzer.rb). I am having trouble understanding how to route this without redirecting to another web page. Basically need help how to add the correct format to routes.rb.
analyzer.html.erb
<%= link_to "Execute Analyzer", :controller => 'fit_anlayzer_controller', :method => 'execute_analyzer', :popup => true %>
fit_analyzer_controller.rb
class FitAnalyzerController < ApplicationController def analyzer end
def execute_analyzer # Delayed::Job.enqueue(AnalyzerJob.new(params[:id]), 3) # command = 'ruby ~/ruby_scripts/fit_analyzer/FitAnalyzer.rb' @execute_command = system 'ruby /Users/gsypolt/rubyqa_project/ruby_scripts/fit_analyzer/FitAnalyzer.rb' flash[:notice] = "Executing FitNesse Analyzer" end end
When accessing http://localhost:3000/fit_analyzer/analyzer receiving this message below
No route matches {:controller=>"fit_anlayzer_controller", :method=>"execute_analyzer", :popup=>true}
I have been learning ruby on rails from lyndia.com and book (rails 3 way).
Attachments: http://www.ruby-forum.com/attachment/7606/qaruby_fitanalyzer_mockup.png