我使用on_the_spot gem来编辑渲染表中的某个列。这很好用。 但是当我使用AJAX创建新记录并更新表时,我收到以下错误消息:
“ActionView :: Template :: Error(没有路由匹配{:action =>”update_attribute_on_the_spot“,:controller =>”stores_spare_parts“}):”
我该如何解决这个问题?
答案 0 :(得分:0)
从代码中我看不出明显的错误。我猜错的是所提到的路线确实没有定义。我认为这是不可能的,因为它在index
- 视图中工作,但如果索引视图属于不同的控制器,例如商店,并创建store_spare_part
去他的控制器,这是一个可能的解决方案。但这只是猜测。
您的路线中还有以下内容:
resources :stores_spare_parts do
collection do
post :update_attribute_on_the_spot
end
end
根据我现在掌握的信息,这是我能想到的唯一合乎逻辑的解释。我希望它有所帮助。
[编辑:发现另一种解决方法]我忘了,但on_the_spot
gem可以选择明确指定url
。目的是能够提供/使用您自己的方法,但也可以在这种情况下使用。
用法:
on_the_spot_edit post, :title, :url => url_for({:controller => 'stores/store_spare_parts', :action => :update_attribute_on_the_spot})
应该需要它仍然很奇怪,但我希望这是一个有效的解决方法。