[英]Best practices for custom AJAX in Rails
对于标准表单,我知道您可以使用remote: true
来通过AJAX提交表单。 但是,如果您没有标准表格,该怎么办? 例如,我有美国的SVG地图。 当用户单击状态(即<path>
元素)时,它将触发AJAX请求,以便我的应用程序可以将对该状态的投票存储在数据库中。 通过将click
事件绑定到path
元素,然后使用标准jQuery $.ajax()
方法,我可以很好地工作。 但是,我不确定是否存在通过非形式交互来触发AJAX请求的其他更“标准”方式。
我也不确定Rails控制器如何响应此请求的最佳实践。 现在,我只是简单地用以下命令响应:
if vote.save
render json: {success: true}
else
render json: {success: false, data: vote.errors}
end
然后,我在$.ajax
成功回调中检查success
的值,并在那里处理false
的情况。
我是Rails的新手,只是自己完成所有这些工作。 这是hacky吗? 在不涉及表单的情况下,是否存在不同的标准化方法来发送和响应AJAX请求?
您为ajax json请求所做的事情是合理的,并且您会在许多Rails代码中找到该结构,该结构必须专门与需要json的JavaScript客户端进行通信
但是,您还应该注意,我们通常更喜欢js(而不是json)(因为选择),这样我们就可以利用您在问题中提到的jquery-ujs(远程:true)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.