0
嗨我试图从点击事件远程更新我的数据库中的一个元素。 当点击事件被触发我收到以下错误,但我相信,我用正确的方法更新数据库记录与点击事件
Started PUT "/availabilities/131/edit" for 124.168.74.144 at 2013-02-13 08:02:40 +0100
ActionController::RoutingError (No route matches [PUT] "/availabilities/131/edit"):
HAML点击事件
.six.columns#named_players
%h5 Named Players
%table.twelve
%thead
%tr
%th Change Status
%th Attending
%tbody
- @availabilities.each do |a|
%tr
%td= full_name(a.user)
%td
%ul.button-group.two-up.even
%li= button_to 'Accept', edit_availability_path(a), :remote => true, :method => :put, :class => 'button tiny success', :disable_with => 'Add'
%li= link_to 'Decline', '#', :remote => true, :method => :put, :class => 'button tiny alert'
控制器
def update
@availability = Availability.find(params[:id])
respond_to do |format|
if @availability.update_attributes(params[:availability])
format.html { redirect_to @availability, :notice => 'Availability was successfully updated.' }
format.js
else
format.html { render :action => "edit" }
format.js
end
end
end
所以我需要改变我的路线? – 2013-02-13 07:45:53
你必须添加更新路由(如果它还不存在),并且你的按钮(或链接)必须调用更新控制器方法 – 2013-02-13 07:54:09
更新在我的控制器中已经如上所述,所以id需要更改链接? – 2013-02-13 08:05:37