Rails 3.2 と ActiveAdmin 0.4.4 を使用してアプリケーションを開発しています。Teaser (/app/models/teaser.rb) という名前のモデルがあります。
class Teaser < ActiveRecord::Base
attr_accessible :img, :name, :url
validates :img, :name, :presence => true
mount_uploader :img, TeaserUploader
end
そして、それに ActiveAdmin を追加しました (/app/admin/teaser.rb):
# encoding: UTF-8
ActiveAdmin.register Teaser do
form do |f|
f.inputs "Teaser" do
f.input :name, :label => 'Текст'
f.input :url, :label => 'Ссылка'
f.input :img, :as => :file, :label => 'Картинка'
end
f.buttons
end
end
ここで、「http://localhost:3000/admin/teasers」にアクセスすると、次のエラーが表示されます。
C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/activeadmin-0.4.4/app/views/active_admin/resource/index.html.arb を表示すると、行 #1 が発生します: Collection はありませんページ付けされたスコープ。:paginated_collection を呼び出す前に、collection.page(params[:page]).per(10) を設定します。
Linux (Ubuntu 12.04) でアプリをテストすると、同じエラーが発生します。
この問題は次の方法で解決できます (/app/admin/teaser.rb):
# encoding: UTF-8
ActiveAdmin.register Teaser, :as => 'Somename' do
しかし、この方法を使用すると、/app/config/locales/XX.yml を使用してこのモデルを翻訳できません。
他のすべてのモデルは正常に動作します。