Я не думаю, что флажок является правильным контролем для того, что вы ищете.
Вы сказали, что хотите, чтобы пользователь мог утверждать или отклонять элементы, что означает, что у вас есть 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>
...
В вашем контроллере
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 ...