Есть у меня check_box_tag со JS скриптом который передает параметр task_status:
<%= check_box_tag :status, 'complete', task.status, task_id: task.id %>
<% session[:task_id] = task.id %>
<script>
$('#status').change(function() {
$.get('todo/task_status?task_status='+$(this).val(), function(data, status) {
if(status == 'success'){
alert(data)
}
})
});
</script>
не ужасайтесь, что task_id передается через session, это так для вида.
Вот контроллер:
def task_status
@task = Task.find(session[:task_id])
if @task.status == COMPLETE_STATUS
@task.status = nil
else
render text: 'success' if @task.status = params[:task_status]
end
@task.save!
end
Так вот мне нужно передать как то и task_id: task.id
UPD1
Все заработало но только для первого таска в списке, то есть когда я нажимаю на какой то другой то ничего не происходит, лог молчит полностью, есть подозрение что javascript просто не выполняется