2

rails admin をインストールし、rails admin のアクティブ レコードにすべてのモデルを含めます。

初めて、レール管理者をインストールすると、このエラーが表示されます

NoMethodError in RailsAdmin::MainController#index

undefined method `per_page_kaminari' for #<ActiveRecord::Relation:0x00000006713e18>

この構成を追加して修正しました

Kaminari.configure do |config|
    config.page_method_name = :per_page_kaminari
end

プロジェクトにacts_as_taggable_on gemをインストールすると、レール管理者はタグモデルを追加しませんでした(他のモデルにフィールドtags_listを追加しました)が、タグを管理するためにレール管理者にタグモデルを追加したい(インデックス、作成、編集、破棄)。 .

この行を追加しました

config.included_models = ['ActsAsTaggableOn::Tag'] 

rails_admin.rb で、ダッシュボードにタグモデルが表示されますが、リストタグを開くと、このエラーが再び表示されます

NoMethodError in RailsAdmin::MainController#index

undefined method `per_page_kaminari' for #<ActiveRecord::Relation:0x00000006713e18>

rails admin でタグモデルを追加してタグを管理するにはどうすればいいですか?!

4

3 に答える 3

4

ここで同じ問題を解決する必要がありました。gem 'rails_admin_tag_list'を使用しましたが、rubygem の最新バージョンは Rails 4 用に更新されていません (RailsAdmin プロパティをサポートしていません)。そのため、修正を含むマスターから 1 つを取得する必要があります。

gem 'rails_admin_tag_list', git: 'https://github.com/kryzhovnik/rails_admin_tag_list.git', branch: 'master'

実際に追加します:

config.included_models = ['YourModel', 'ActsAsTaggableOn::Tag']

class YourModel < ActiveRecord::Base
  acts_as_taggable # dont add attr_accessible stuff since we're in rails 4
end

次に、タグ リストの構成を選択します。

config.model 'YourModel' do
  configure :tag_list  do
    partial 'tag_list_with_autocomplete'
  end
  exclude_fields :body, :locale, :base_tags, :tags
end
于 2015-07-26T09:45:37.293 に答える
2

まったく同じ問題が ActiveAdmin でも発生します。acts_as_tggableタグを activeadmin で管理します。私は同じ解決策でそれを解決しました:

config/initializersカミナリのカスタム コードでイニシャライザを追加します。

Kaminari.configure do |config|
    config.page_method_name = :per_page_kaminari
end

app/models呼び出されたで新しいクラスを作成しますtag.rb

# This class fixes a bug between Kaminari, RailsAdmin, and ActsAsTaggableOn.
class Tag < ActiveRecord::Base
end

RailsAdmin configTagの代わりにモデルを使用します。ActsAsTaggableOn::Tag

config.included_models = [Tag] 
于 2014-04-16T22:31:56.557 に答える