Module: Patternist::Controllers::ActionPack::Helpers

Defined in:
lib/patternist/controllers/actionpack/helpers.rb

Overview

Provides helper methods for controller resource handling and naming conventions. Automatically infers resource classes and names based on controller naming.

Defined Under Namespace

Modules: ClassMethods

Constant Summary collapse

CONTROLLER_SUFFIX =
'Controller'
NAMESPACE_SEPARATOR =
'::'

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.included(base) ⇒ Object



14
15
16
# File 'lib/patternist/controllers/actionpack/helpers.rb', line 14

def self.included(base)
  base.extend ClassMethods
end

Instance Method Details

#collectionObject



18
# File 'lib/patternist/controllers/actionpack/helpers.rb', line 18

def collection = resource_class.all

#collection_nameObject



26
# File 'lib/patternist/controllers/actionpack/helpers.rb', line 26

def collection_name = @collection_name ||= resource_name.pluralize

#create_resourceObject



20
# File 'lib/patternist/controllers/actionpack/helpers.rb', line 20

def create_resource = resource.save

#destroy_resourceObject



22
# File 'lib/patternist/controllers/actionpack/helpers.rb', line 22

def destroy_resource = resource.destroy

#find_resourceObject



19
# File 'lib/patternist/controllers/actionpack/helpers.rb', line 19

def find_resource = resource_class.find(id_param)

#id_paramObject



28
# File 'lib/patternist/controllers/actionpack/helpers.rb', line 28

def id_param = params.fetch(params_id_key, nil)

#params_id_keyObject



29
# File 'lib/patternist/controllers/actionpack/helpers.rb', line 29

def params_id_key = :id

#resourceObject



27
# File 'lib/patternist/controllers/actionpack/helpers.rb', line 27

def resource = instance_variable_get(instance_variable_name(resource_name))

#resource_classObject



23
# File 'lib/patternist/controllers/actionpack/helpers.rb', line 23

def resource_class = @resource_class ||= self.class.resource_class

#resource_class_nameObject



25
# File 'lib/patternist/controllers/actionpack/helpers.rb', line 25

def resource_class_name = @resource_class_name ||= model_name_human || resource_class.name

#resource_nameObject



24
# File 'lib/patternist/controllers/actionpack/helpers.rb', line 24

def resource_name = @resource_name ||= self.class.resource_name

#update_resourceObject



21
# File 'lib/patternist/controllers/actionpack/helpers.rb', line 21

def update_resource = resource.update(resource_params)