Rails HTML Table update fields in mongo with AJAX
- by qwexar
I'm building a Rails app backed by mongodb using mongoid.
It's a one page app, with a HTML table, every field for every row of which, needs to be editable without refreshing the page.
This is your usual Rails view ( like many in rails casts ) showing a table with rows and columns containing data.
For example. I'm showing cars, and showing their make, model and notes
They way I'm doing this is by appending _id of a mongo document to every column and marking it's field name in html id too. Then I pick up the value for $("#id") and send it to rails controller via AJAX and run @car.update_attributes method accordingly.
Currently, one of my rows looks like this.
<tr>
<td id=<%= car.id %>_make>
<%= car.make %>
</td>
<td id=<%= car.id %>_model>
<%= car.model %>
</td>
<td id=<%= car.id %>_notes>
<%= car.notes %>
</td>
</tr>
// my function which is called onChange for every column
function update_attributes(id){
var id = id.split[0];
var attribute = id.split[1];
$.ajax("sending id and attribute to rails controller");
}
Is there any built it Rails magic which would let me update only a field in a model without refreshing the page?
or.
Is there a Rails plugin for this?