Module: Faalis::Dashboard::Sections::ResourceShow::ClassMethods
- Defined in:
- lib/faalis/dashboard/sections/resource_show.rb
Overview
The actual DSL for index ages
Instance Method Summary collapse
-
#in_show(&block) ⇒ Object
To specify any property and action for ‘show` section you must use `in_index` class method with block of properties.
Instance Method Details
#in_show(&block) ⇒ Object
To specify any property and action for ‘show` section you must use `in_index` class method with block of properties. For example:
“‘ruby
class ExamplesController < Dashboard::Application
in_show do
attributes :name, :description
:close, label: 'Close', href: dashboard_example_close_path
end
end
“‘
74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 |
# File 'lib/faalis/dashboard/sections/resource_show.rb', line 74 def in_show(&block) name = controller_name path = controller_path.gsub(name, '').gsub(/dashboard\//, '') model = "#{path}#{name}".classify.constantize show_props = Faalis::Dashboard::DSL::Show.new(model) unless block_given? fail ArgumentError, "You have to provide a block for 'in_show'" end show_props.instance_eval(&block) if block_given? define_method(:show_properties) do unless defined? @__show_props__ instance_exec(show_props, &block) @__show_props__ = show_props end return @__show_props__ end end |