Вопрос по ruby-on-rails – Как украсить вложенные атрибуты (ассоциации) с помощью Draper в Rails 3?

10

Моя среда:

Rails 3.2с Дрейпер жемчужина

Я использую вложенные ресурсы и не могу понять, где объявить декоратор.

#app/controllers/users_controller.rb
def show
  @user = UserDecorator.find(params[:id])
  @items = @user.items
end

#app/controllers/items_controller.rb
def show
  @item = @user.items.find(params[:id])
end

Я пытался заменитьitems сItemDecorator и это не сработало. Куда мне его положить?

Я знаю, что у Дрейпера есть проблемы с вложенными ресурсами в формах, но это не форма!

Ваш Ответ

1   ответ
11

user у которого многоitems, но твойitems не были украшены?

Так добавь в свойUserDecorator:

class UserDecorator < Draper::Base
  decorates :user
  decorates_association :items #, :with => :item 

  [..]
end

class ItemDecorator < Draper::Base
  decorates :item

  [..]
end

Посмотри наисточни.

Похожие вопросы