我正在尝试使用Draper装饰public_activity gem创建的活动的集合。
但是,看来PublicActivity :: Activity并不是从ActiveRecord继承的(我是否可以这样假设?),因此我需要添加include Draper::Decoratable
到模型中,但是那个PublicActivity模型到底在哪里?
顺便说一句,这是我得到的错误:
Could not infer a decorator for PublicActivity::Activity.
好吧,事实证明这是行不通的:
class StudentActivitiesController < ApplicationController
def index
@activities = PublicActivity::Activity.order("created_at desc").decorate
end
end
我猜这是因为命名空间查询PublicActivity::Activty
不继承自ActiveRecord,因此不包括Draper::Decoratable
,但是我不确定。如果我错了,请纠正我。
但是,使用Draper可以修饰对象和查询,因此确实可以实现...
class StudentActivitiesController < ApplicationController
def index
@activities = PublicActivity::Activity.order("created_at desc")
@activities = StudentActivitiesDecorator.decorate_collection(@activities)
end
end
装饰者还必须包括 decorates PublicActivity::Activity
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句