Rails javascript数据库查询

如何从javascript进行PUT,POST或DELETE调用?

我使用jquery拖放收集了一些数据。 我如何将其发送到数据库? 我想我可能能够使用jQuery.ajax,但无法确切地知道如何。

任何指针赞赏。

解:

这是有效的JavaScript

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

但它并没有将第8条的名称改为新名称。 Firebug没有显示错误,但我仍然无法将数据传递给编辑。

url是使用put url的标准更新,它存在于路由中。

您可以使用jQuery ajax:这是使用服务器端代码动态处理浏览器请求的一种非常好的方法。

 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 }); }); 

有关详细信息,请查看以下链接

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

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

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' 

对于PUT和DELETE,添加一个名为_method的额外参数: _method=PUT
Rails使用它来模拟PUT和DELETE。