在 rabl 中访问一个 child "current" object

Access a child "current" object in rabl

我想获取 child 节点所引用的 object,以便进行查询。

我的代码如下所示:

child @course_types => :course_types do |course_type|
  attributes :id, :name, :deleted
  child CourseTypeCategory.where(course_type: course_type, active: true) => :category_position do
    attributes :category_id, :position
  end
end

这个查询的结果 CourseTypeCategory.where(course_type: course_type, active: true) 总是返回相同的结果,就好像 course_type 总是相同的每种呈现类型(在这种情况下,我怀疑总是第一个 object 的 @course_types)。有没有办法获取 child 的 "current object" 并进行查询,就像你在做循环一样(比如 each do)?

提前致谢,如果问题令人困惑,我们深表歉意。

试试这个。

child @course_types => :course_type do
    attributes :id, :name, :deleted
    node(:course_type_category) do |course_type|
        CourseTypeCategory.where(course_type: course_type, active: true).collect do |category|
            {category_id: category.id, position: category.position }
        end
    end
end

抱歉,关于这方面的信息太少了,我很匆忙。