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。