小编Ant*_*n K的帖子

在rails中的to_json中过滤嵌套的模型集合

我有两个型号:

class Calendar < ActiveRecord::Base
  has_many :events
end

class Event < ActiveRecord::Base
  belongs_to :calendar
end
Run Code Online (Sandbox Code Playgroud)

我需要输出嵌套事件的所有日历作为json,我可以这样做:

Calendar.all.to_json(:include => :events)
Run Code Online (Sandbox Code Playgroud)

但我还需要过滤事件,例如:

where(:name => 'bla')
Run Code Online (Sandbox Code Playgroud)

我该怎么办?到目前为止,我的解决方案是手动将每个日历转换为哈希,过滤事件并将它们转换为哈希,然后将事件附加到日历哈希并在结尾处转换为to_json.但我希望有一个更好的方法.

json ruby-on-rails ruby-on-rails-3

3
推荐指数
1
解决办法
609
查看次数

标签 统计

json ×1

ruby-on-rails ×1

ruby-on-rails-3 ×1