hec*_*rsq 2 ajax ruby-on-rails
我目前正在尝试使用Rails编写我的第一个ajax接口.
该应用程序当前显示一个填充了列表项的表.用户必须批准或拒绝每个列表项.我目前在每行的末尾都有一个编辑链接,显示一个表单,我可以在其中批准列表项.
我正在考虑使用复选框而不是编辑链接.当用户单击复选框时,我想用状态,用户名和日期/时间更新数据库而不离开此页面.
我不认为复选框是您正在寻找的正确控件.您说您希望用户能够批准或拒绝项目,这意味着您有3种状态:未处理,已批准和已拒绝.复选框仅支持2种状态:关闭和打开
我会使用两个链接接受并拒绝,然后执行如下操作.
在你看来:
...
<tr id="item1">
<td>Accept or Reject</td>
<td>
link_to_remote 'accept', :action => :accept, :id => 1, :method => :post
link_to_remote 'reject', :action => :reject, :id => 1, :method => :post
</td>
</tr>
...
Run Code Online (Sandbox Code Playgroud)
在你的控制器中
def accept
item = Item.find(params[:id])
item.accept
respond_to do |want|
want.js {
render :update do |page|
page << "$('item_#{item.id}').cells[0].innerHTML = 'Accepted'"
...include other updates you need to make to your row...
page.visual_effect :highlight, "item_#{item.id}"
end
}
end
end
... similar for reject method ...
Run Code Online (Sandbox Code Playgroud)