Używam gem RABL do renderowania danych użytkownika JSON dla użytkowników komentarzy, które są dziećmi adnotacji będących dziećmi obrazów. Chciałbym zrobić coś podobnego do:Rails 3.1 głębokie zagnieżdżanie z RABL
object @image
node :annotations do
@image.annotations.map { |a| {
:id => a.id,
:x1 => a.x1,
:x2 => a.x2,
:y1 => a.y1,
:y2 => a.y2,
node :comments do
@image.annotations.comments.map { |c| {
:body => c.body,
:user_id => c.user_id,
:name => User.find(c.user_id).name,
:user_icon => user_icon(User.find(c.user_id), 'square', 30)
}}
end
}}
end
Wiem, że nie jest ważna w Rabl, próbowałem też stosując zamiast węzła dziecko, ale nie może uzyskać dostępu do danych użytkownika w ten sposób. Jak mam to zrobić i jaka jest właściwa składnia, aby tak się stało?
+1. ten sposób tworzenia skrótu w bloku oszczędza kilka linii, ale jest nieco zagmatwany (i jednoznaczny). Miałem zamiar to zaktualizować, ale cóż, myślę, że wcale nie jest tak źle. – tokland