/ / Rails javascript databázové dotazy - javascript, ruby-on-rail, jquery, ruby-on-rail-3.1

Rails databázové požiadavky javascript - javascript, ruby-on-rail, jquery, ruby-on-rail-3.1

Ako môžem urobiť volanie PUT, POST alebo DELETE z javascriptu?

Ja som zhromaždil niektoré údaje pomocou jquery drag and drop.Ako sa potom poslať do databázy? Myslím, že by som mohol byť schopný použiť jQuery.ajax, ale nemôže vypracovať, ako presne.

Všetky ukazovatele oceňujú.

Riešenie:

Toto je javascript, ktorý funguje

$(document).ready(function() {
$.ajax({
type: "PUT",
url:    "/articles/8", // should be mapped in routes.rb
data: {articles:{name:"New Name"}}
});
});

Ale nemení názov článku 8 na nový názov. Firebug nevykazuje žiadne chyby, ale stále nemôžem preniesť údaje do editácie.

Adresa URL je štandardná aktualizácia s použitím adresy url, ktorá sa nachádza na trasách.

odpovede:

2 pre odpoveď č. 1

Pre tento účel môžete použiť jQuery ajax: Je to veľmi dobrý spôsob, ako dynamicky spracovať žiadosti o prehliadač pomocou kódu na strane servera.

jQuery("#element_id").on("click change",function(){ // use event as per your need
$.ajax({
type: "GET",
url:    "/edit_comment", // should be mapped in routes.rb
data: {comment:"new comment"},
datatype:"html", // check more option
success: function(data) {
// handle response data
},
async:   true
});

});

Ďalšie podrobnosti nájdete na týchto odkazoch:

http://api.jquery.com/jQuery.ajax/

http://api.jquery.com/category/ajax/

Kód RAIL:

def edit_comment
@comment = params[:comment]
// store to database
response_to do |format|
render :html "comment.html"
end
end

routes.rb

map.edit_comment "edit_comment", :controller => "comment", :action => "edit_comment"

2 pre odpoveď č. 2

Pre PUT a DELETE pridajte ďalší parameter s názvom _method: _method=PUT
Rails používa na simuláciu PUT a DELETE.