我在ActiveAdmin中有许多共享的DSL代码;我已经研究了许多共享代码的方法,其中一些方法包括创建一个我包含在资源中的模块以及其他包含的模块,将路径添加到Active Admin初始化程序。
但是,我发现没有任何效果。我认为应该有一种简单的方法来在资源上共享相似的代码 - 而且通过代码它实际上是DSL,包括Arbre和其他领域特定的语言。
以下是我希望全面分享的各种事情:
index do
selectable_column
id_column
column :email
column :current_sign_in_at
column :sign_in_count
column :created_at
actions
end
filter :email
filter :current_sign_in_at
filter :sign_in_count
filter :created_at
menu false
scope :active
scope :inactive
scope :all_items, :default => true
member_action :toggle_activate, method: :get do
...
end
任何帮助将不胜感激。我绝对想成为一名干练的编码员。
答案 0 :(得分:1)
如何将以下mixin包含在您的课程中:
module Foo
def self.included(base)
base.class_eval do
# your shared code here
end
end
end