私は rails_admin を使用していますが、rails_admin でモデルを構成する方法のオプションには、rails_admin.rb 構成ファイルが 1 つあるようです (ただし、このファイルは巨大で、変更のたびにサーバーを再起動する必要があります)。
RailsAdmin.config do |config|
config.model ModelName do
..
または、各モデル内に構成ブロックを含めます。
class ModelName
rails_admin do
..
しかし、これらのブロックは非常に長くなるため、モデル内に config ブロックを含めたくないのです。
そこで、最初にモデルの各構成ブロックから mixin を作成しようとしました。
module ModelNameAdmin
rails_admin do
...
rails_admin を認識しなかったため、これは機能しませんでした。
これを行ってもうまくいきませんでした:
module ModelNameAdmin
RailsAdmin.config do |config|
config.model ModelName do
しかし、どうやら RailsAdmin 構成を複数回呼び出すことができないため、これは機能しませんでした。
そこで、Proc が定義された lib ファイルを用意して、各モデルに含めて使用できるようにしたいと思います。以下のようなので:
model ModelName
require('./lib/model_name_admin')
rails_admin do
@model_name_admin
end
そして、./lib/model_name_admin ファイルには次のものがあります。
@model_name_admin = Proc.new
rails_admin do
..
しかし、これはうまくいきません。私はprocを正しく使用しているとは思わない。