2011-02-13 91 views
1

你好我正在尝试使用as_json来输出父对象作为include。 这里是我的代码:Rails as_json包含父对象?

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

此代码的工作,这一次没有:

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

我得到的错误:

NoMethodError: undefined method `macro' for nil:NilClass 

任何一个? 谢谢:)

+0

似乎“p”是无 - 你如何设置照片和p? – 2011-02-13 17:26:15

+0

对不起,我的一个错字,它是两个“照片”。 – rnaud 2011-02-14 09:42:10

回答

1

我结束了使用acts_as_api它允许方法,模板和大量的是做了更容易的工作很酷的功能。

5

尝试

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

我希望用户作为我的照片的子对象,而不是所有的照片。 – rnaud 2011-03-02 08:22:03

0

你所说的“方法”选项,而不是:

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

我对Rails 4.0中使用此,红宝石2.0带回我需要什么。