class Scaffold::Services::Resource

Attributes

resource[R]

Public Class Methods

new(rails) click to toggle source
# File lib/scaffold/services/resource.rb, line 6
def initialize rails
  @rails = rails
  @resource = Scaffold::Models::Resource.new(@rails.choice[:model])
end

Public Instance Methods

class_name() click to toggle source
# File lib/scaffold/services/resource.rb, line 27
def class_name
  @resource.class_name
end
class_name_with_modules() click to toggle source
# File lib/scaffold/services/resource.rb, line 35
def class_name_with_modules
  @resource.class_name_with_modules
end
collection_name() click to toggle source
# File lib/scaffold/services/resource.rb, line 31
def collection_name
  @resource.collection_name
end
fields() click to toggle source
# File lib/scaffold/services/resource.rb, line 56
def fields
  expand_default_types(hasherize_fields(@rails.choice[:fields]))
end
file_name() click to toggle source
# File lib/scaffold/services/resource.rb, line 39
def file_name
  "#{name}.rb"
end
model_name() click to toggle source
# File lib/scaffold/services/resource.rb, line 11
def model_name
  @resource.model_name
end
modules() click to toggle source
# File lib/scaffold/services/resource.rb, line 15
def modules
  @resource.modules
end
modules?() click to toggle source
# File lib/scaffold/services/resource.rb, line 19
def modules?
  @resource.modules?
end
name() click to toggle source
# File lib/scaffold/services/resource.rb, line 23
def name
  @resource.name
end
search_class_name() click to toggle source

Search::Manage:BooksSearch

# File lib/scaffold/services/resource.rb, line 44
def search_class_name
  if @rails.controller.namespaced?
    "Search::#{@rails.controller.namespaces_as_modules}::#{class_name.pluralize}Search"
  else
    "Search::#{class_name.pluralize}Search"
  end
end
services_folder() click to toggle source
# File lib/scaffold/services/resource.rb, line 52
def services_folder
  @rails.choice[:services_folder]
end

Private Instance Methods

expand_default_types(hash) click to toggle source
# File lib/scaffold/services/resource.rb, line 62
def expand_default_types hash
  hash.each_pair do |key, value|
    hash[key] = 'string' if value.blank?
  end
end
hasherize_fields(fields_array) click to toggle source
# File lib/scaffold/services/resource.rb, line 68
def hasherize_fields fields_array
  fields = {}
  fields_array.each do |field_string|
    (key, value) = field_string.split(':')
    fields[key] = value
  end
  fields
end