将config / routes.rb中的路由匹配到控制器

时间:2013-06-09 15:54:28

标签: ruby-on-rails ajax post routing

所以我试图在我的PollsController中发布'toggle_live'动作但是得到了'No routes matching >>错误。这里的建议真的很棒!谢谢!

它在如此路线中配置:

post "polls/toggle_live"

以下是PollsController中的操作:

  def toggle_live
    @poll = Poll.find(params[:id])

    respond_to do |format|
      format.js {@poll.toggle_live}
    end

  end

以下是发起请求的表单:

= link_to "Start",:method => :post, :action => :toggle_live, :remote=>true, :class=> 'btn btn-success btn-small start-poll' 

1 个答案:

答案 0 :(得分:0)

你应该使用named route,这会更容易:

routes.rb中:

post 'polls/toggle_live' => 'polls#toggle_live', :as => 'toggle_live'

在视图中:

= link_to "Start", toggle_live_path, {:method => :post, :remote=>true}, {:class=> 'btn btn-success btn-small start-poll'}