Class: Admin::MembersController::Controls
- Inherits:
-
Object
- Object
- Admin::MembersController::Controls
- Defined in:
- lib/super/test_support/copy_app_templates/controllers/members_controller.rb
Instance Method Summary collapse
- #display_schema(action:) ⇒ Object
- #form_schema(action:) ⇒ Object
- #model ⇒ Object
- #permitted_params(params, action:) ⇒ Object
- #scope(action:) ⇒ Object
- #show ⇒ Object
- #title ⇒ Object
Instance Method Details
#display_schema(action:) ⇒ Object
43 44 45 46 47 48 49 50 51 52 53 54 |
# File 'lib/super/test_support/copy_app_templates/controllers/members_controller.rb', line 43 def display_schema(action:) Super::Schema.new(Super::Display::SchemaTypes.new) do |fields, type| fields[:name] = type.dynamic(&:itself) fields[:rank] = type.dynamic(&:itself) fields[:position] = type.dynamic(&:itself) fields[:ship] = type.dynamic { |ship| "#{ship.name} (Ship ##{ship.id})" } fields[:created_at] = type.dynamic(&:iso8601) if action.show? fields[:updated_at] = type.dynamic(&:iso8601) end end end |
#form_schema(action:) ⇒ Object
56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 |
# File 'lib/super/test_support/copy_app_templates/controllers/members_controller.rb', line 56 def form_schema(action:) Super::Schema.new(Super::Form::SchemaTypes.new) do |fields, type| fields[:name] = type.generic("form_field_text") fields[:rank] = type.generic("form_field_select", collection: Member.ranks.keys) fields[:position] = type.generic("form_field_text") fields[:ship_id] = type.generic( "form_field_select", collection: Ship.all.map { |s| ["#{s.name} (Ship ##{s.id})", s.id] }, ) fields[:favorite_things_attributes] = type.has_many(:favorite_things) do fields[:name] = type.generic("form_field_text") fields[:_destroy] = type._destroy end end end |
#model ⇒ Object
14 15 16 |
# File 'lib/super/test_support/copy_app_templates/controllers/members_controller.rb', line 14 def model Member end |
#permitted_params(params, action:) ⇒ Object
39 40 41 |
# File 'lib/super/test_support/copy_app_templates/controllers/members_controller.rb', line 39 def permitted_params(params, action:) params.require(:member).permit(:name, :rank, :position, :ship_id, favorite_things_attributes: [:id, :name, :_destroy]) end |
#scope(action:) ⇒ Object
18 19 20 |
# File 'lib/super/test_support/copy_app_templates/controllers/members_controller.rb', line 18 def scope(action:) Member.all end |
#show ⇒ Object
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'lib/super/test_support/copy_app_templates/controllers/members_controller.rb', line 22 def show Super::Action.new( steps: [ :load_resource, ], page: Super::Layout.new( mains: [ Super::Panel.new( Super::Partial.new("resource_header"), Super::Partial.new("show") ), Super::Partial.new("favorite_things") ] ) ) end |
#title ⇒ Object
10 11 12 |
# File 'lib/super/test_support/copy_app_templates/controllers/members_controller.rb', line 10 def title Member.name.pluralize end |