ruby-on-rails – Rails渲染为json,包括嵌套属性和排序
发布时间:2020-12-16 19:51:07 所属栏目:百科 来源:网络整理
导读:我试图将一个对象渲染为json,包括嵌套的属性,并通过created_at属性进行排序. 我正在使用代码: format.json { render :json = @customer,:include = :calls} 如何通过created_at属性排序调用? 解决方法 如果您认为rails的工作原理,调用只是一种与Call模型相
我试图将一个对象渲染为json,包括嵌套的属性,并通过created_at属性进行排序.
我正在使用代码: format.json { render :json => @customer,:include => :calls} 如何通过created_at属性排序调用? 解决方法
如果您认为rails的工作原理,调用只是一种与Call模型相关的方法.有几种方法可以做到这一点.一个是在订单上设置订单选项.一个是改变全局的默认范围,另一个是在客户模型中创建一个返回调用的新方法(如果您希望在编码之前对调用进行任何操作,则有用).
方法1: class Customer < ActiveRecord::Base has_many :calls,:order => "created_at DESC" end 方法2: class Call < ActiveRecord::Base default_scope order("created_at DESC") end 方法3: class Call < ActiveRecord::Base scope :recent,order("created_at DESC") end class Customer < ActiveRecord::Base def recent_calls calls.recent end end 然后你可以使用: format.json { render :json => @customer,:methods => :recent_calls} (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |