2014-09-02 1 views
1

я следующие моделиMongoid записи, встроенная в ресурсе в активном администраторе не отображается

class User::ActiveAdmin::Partner < User::ActiveAdmin::Base 
    embeds_many :bonuses, class_name: 'User::Bonus' 
end 

и

class User::Bonus 
    include Mongoid::Document 
    embedded_in :partner, class_name: 'User::ActiveAdmin::Partner' 
end 

, а затем зарегистрировать бонусы в активном администраторе

ActiveAdmin.register User::Bonus, as: 'Bonuses' do 
     config.filters = false 

     permit_params :number, :order_id 


     controller do 
     def scoped_collection 
      if current_admin_user.is_a? User::ActiveAdmin::Partner 
      current_admin_user.bonuses.page(params[:page]).per(10) 
      else 
      super 
      end 
     end 

     end 

в сбор не пуст (я создал пару бонусов), но на странице индекса ActiveAdmin я вижу, что нет НИКАКИХ БОНУСОВ С. И я ничего не могу сделать, чтобы он отображался правильно. Я заметил, что таблица User :: Bonus пуста, даже если у партнера есть что-то, но, как я знаю, так оно и работает, и все в порядке. Итак, как я могу отобразить таблицу? Благодарю.

ответ

1

Проблема в методе ActiveAdmin :: Helpers :: Collection # collection_size. Вы используете старую версию activeadmin-mongoid. Попробуйте обновить activeadmin-mongoid. В ветке rails4 неверно collection_size. Вы должны переопределить этот метод в своем приложении, как здесь: https://github.com/elia/activeadmin-mongoid/blob/master/lib/active_admin/mongoid/helpers/collection.rb