2016-10-02 8 views
0

Я хочу получить объект, на который ссылается дочерний узел, поэтому я могу сделать запрос.Доступ к дочернему «текущему» объекту в rabl

Мой код выглядит следующим образом:

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 был всегда одинаков для каждого типа она оказывается (в данном случае я подозреваю, всегда первый объект @course_types). Есть ли способ получить «текущий объект» дочернего элемента и сделать запрос, например, если вы делаете цикл (например, each do)?

Спасибо заранее и извините, если вопрос сбивает с толку.

ответ

1

Попробуйте это.

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 

Извините за такую ​​небольшую информацию об этом, я очень спешу.

+0

Это сработало благодаря – InesM

Смежные вопросы