Ruby on rails中相应Ajax请求

rails是我一直认为最好用的框架之一,感觉他的约定大于配置的策略使框架使用起来很人性化,用起来也符合我们一般的习惯。
在rails中相应Ajax请求是非常方便的,最简单的在控制器中直接把从数据库中取出的ActiveRecord用“render json”的方式返回给客户端就可以了。例如,我们有一个用户表,他的Model名字是User。

json = User.all
render json: json

还有一种情况,就是如果我们在数据取出来,要返回给客户端json数据之前,需要对数据做一些处理。比如,我有一个商品进货的表(purchase,Model名为Purchase),需要记录进货的时间,存储的时候记录的是精确的时间,但是取出来的时候我们只需要类似”2017-4-21”这样的格式就可以了。这种可以这么来做:

//表结构
//purchase
//id        int
//name      string
//purch_date    datetime
json = Purchase.all.map{|e| {:id => e.id,:name => e.name,:purch_date => e.purch_date.strftime("%Y-%m-%d")}}
render json: json

最后,如果我们有时候需要提供的json数据结构比较复杂,例如有一次我需要把从数据库中取出的记录包装成[x,y]这样的节点数组,还有总分,日期等单独的键值对,在用sql或者ActiveRecord就有点吃力了,那我们就得利用h={} 初始化一个哈希,构建一个json了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值