Module: StrongResources::Controller::Mixin::ClassMethods

Defined in:
lib/strong_resources/controller/mixin.rb

Instance Method Summary collapse

Instance Method Details

#strong_resource(name, opts = {}, &blk) ⇒ Object



25
26
27
28
29
30
31
32
33
34
35
36
37
# File 'lib/strong_resources/controller/mixin.rb', line 25

def strong_resource(name, opts = {}, &blk)
  opts[:require] ||= name unless opts[:require] == false
  resource = StrongResource.from(name, opts, &blk)

  resources = { create: resource, update: resource }
  resource.customized_actions.each_pair do |action_name, prc|
    resource = StrongResource.from(name, opts, &blk)
    resource.instance_eval(&prc)
    resources[action_name] = resource
  end

  self._strong_resources = resources
end