我跟随Ryan Bates'rails tutorial设置了一个可排序的对象列表。通过一些修改,它现在正在工作,我可以在“有很多”页面上拖放“属于”元素的列表,并将后置动作发送到我的控制器...然后给出500错误
NoMethodError(当你没想到它时,你有一个零对象! 您可能期望一个Array实例。 在评估nil.each_with_index时发生错误: app / controllers / cuttings_controller.rb:87:在`sort'
我相信这是因为虽然Ryan的控制器知道它正在处理哪种切割,但我需要传递给它的参数。
以下是我的用户页面上的行(包含'剪辑'):
<%= sortable_element('faqs', :url => 'sort_cutting', :handle => "handle") %>
这是切割控制器中的定义:
def sort
params[:cuttings].each_with_index do |id, index|
Cutting.update_all(['position=?', index+1], ['id=?', id])
end
render :nothing => true
end
有人会友好地告诉我如何调整它以便它能正常工作吗?我应该通过哪些参数?我试过了:cutting =&gt; @ cutting.id,哪个没用。邮政路线使用以下方式设置:
match 'users/sort_cutting' => 'cuttings#sort'
......哪个有点难看,但这是我能让它发挥作用的唯一方法!
提前致谢。