使用to_json包含方法的嵌套信息

时间:2013-04-16 16:07:23

标签: ruby-on-rails json

我有一个嵌套的方法,我想通过to_json输出:

Venue有一个名为published_events的方法,它返回已发布的事件:

def published_events

    events_array = []

    self.events.each do |event|
      if event.published
        events_array << event
      end
    end

    events_array

  end

Event上有一个to_param方法,我希望将其包含在Venue的json渲染中:

format.json { render :json => @venue.to_json(:methods => :published_events => {:include => :to_param}) }

当然,这不包括to_param事件方法。我还有其他方法可以解决这个问题,还是需要建立自己的json?我可以在published_events方法中包含to_param方法吗?

1 个答案:

答案 0 :(得分:10)

 @venue.to_json(:include => {:published_events => {:method => :to_param}})