在rabl中使用装饰器

在rabl中使用装饰器

问题描述:

有没有人知道如何在rabl文件中使用装饰器?在rabl中使用装饰器

collection @invitations 
    child(:user) 
    attributes .... 

我希望能够做到这一点:

collection @invitations 
    child(:user => user.decorate) 
    attributes .... 

这是工作以及

object false 
child UserDecorator.decorate(current_user) 

我无法找出正确的语法我的问题。

我想你几乎都有正确的答案。我相信你需要切换订单。

child(user.decorate => :user) 

rabl's documentation中,您可以从任意数据源添加子节点。就像这样:

child @posts => :foobar do 
    attributes :id, :title 
end 

另一种方法是,当你装点您的邀请来装饰用户关联。如果你使用的是draper gem,你可以这样做:

class InvitationDecorator < Draper::Decorator 
    decorates_association :user 
end