Rails as_json包含父对象?

时间:2011-02-13 17:22:23

标签: ruby-on-rails json

您好我正在尝试使用as_json将父对象输出为include。 这是我的代码:

photo.as_json(:include => [:comments, :likes])

此代码有效,此代码不起作用:

photo.as_json(:include => [:comments, :likes, :user])

我收到错误:

NoMethodError: undefined method `macro' for nil:NilClass

任何人? 谢谢:))

3 个答案:

答案 0 :(得分:5)

尝试

user = User.find(1)    
user.as_json(:include => {:photos => {:include => [:comments, :likes]}})

答案 1 :(得分:1)

我最终使用acts_as_api,它允许方法,模板和许多很酷的功能,使工作更容易。

答案 2 :(得分:0)

你改为调用“方法”选项:

photo.as_json(:methods => [:user], :include => [:comments, :likes, :user])

我在Rails 4.0中使用了这个,ruby 2.0来恢复我需要的东西。