class Trestle::Resource::Builder
Public Instance Methods
adapter(&block)
click to toggle source
# File lib/trestle/resource/builder.rb, line 7 def adapter(&block) klass = admin.adapter_class klass.class_eval(&block) if block_given? klass end
adapter=(adapter)
click to toggle source
# File lib/trestle/resource/builder.rb, line 13 def adapter=(adapter) admin.adapter_class = adapter end
build_instance(&block)
click to toggle source
# File lib/trestle/resource/builder.rb, line 33 def build_instance(&block) admin.define_adapter_method(:build_instance, &block) end
collection(&block)
click to toggle source
# File lib/trestle/resource/builder.rb, line 24 def collection(&block) admin.define_adapter_method(:collection, &block) end
count(&block)
click to toggle source
# File lib/trestle/resource/builder.rb, line 82 def count(&block) admin.define_adapter_method(:count, &block) end
decorate_collection(&block)
click to toggle source
# File lib/trestle/resource/builder.rb, line 61 def decorate_collection(&block) admin.define_adapter_method(:decorate_collection, &block) end
decorator(decorator)
click to toggle source
# File lib/trestle/resource/builder.rb, line 57 def decorator(decorator) admin.decorator = decorator end
delete_instance(&block)
click to toggle source
# File lib/trestle/resource/builder.rb, line 45 def delete_instance(&block) admin.define_adapter_method(:delete_instance, &block) end
find_instance(&block)
click to toggle source
# File lib/trestle/resource/builder.rb, line 28 def find_instance(&block) admin.define_adapter_method(:find_instance, &block) end
Also aliased as: instance
merge_scopes(&block)
click to toggle source
# File lib/trestle/resource/builder.rb, line 65 def merge_scopes(&block) admin.define_adapter_method(:merge_scopes, &block) end
paginate(options={}, &block)
click to toggle source
# File lib/trestle/resource/builder.rb, line 77 def paginate(options={}, &block) admin.pagination_options = admin.pagination_options.merge(options) admin.define_adapter_method(:paginate, &block) end
params(&block)
click to toggle source
# File lib/trestle/resource/builder.rb, line 53 def params(&block) admin.define_adapter_method(:permitted_params, &block) end
remove_action(*actions)
click to toggle source
# File lib/trestle/resource/builder.rb, line 17 def remove_action(*actions) actions.each do |action| controller.remove_possible_method(action.to_sym) admin.actions.delete(action.to_sym) end end
return_to(options={}, &block)
click to toggle source
# File lib/trestle/resource/builder.rb, line 97 def return_to(options={}, &block) actions = options.key?(:on) ? Array(options[:on]) : [:create, :update, :destroy] actions.each do |action| admin.return_locations[action.to_sym] = block end end
save_instance(&block)
click to toggle source
# File lib/trestle/resource/builder.rb, line 41 def save_instance(&block) admin.define_adapter_method(:save_instance, &block) end
scope(name, scope=nil, options={}, &block)
click to toggle source
# File lib/trestle/resource/builder.rb, line 91 def scope(name, scope=nil, options={}, &block) scopes do scope(name, scope, options, &block) end end
scopes(options={}, &block)
click to toggle source
# File lib/trestle/resource/builder.rb, line 86 def scopes(options={}, &block) admin.scopes.options.merge!(options) admin.scopes.append(&block) if block_given? end
sort(&block)
click to toggle source
# File lib/trestle/resource/builder.rb, line 69 def sort(&block) admin.define_adapter_method(:sort, &block) end
sort_column(column, &block)
click to toggle source
# File lib/trestle/resource/builder.rb, line 73 def sort_column(column, &block) admin.column_sorts[column.to_sym] = block end
to_param(&block)
click to toggle source
# File lib/trestle/resource/builder.rb, line 49 def to_param(&block) admin.define_adapter_method(:to_param, &block) end
update_instance(&block)
click to toggle source
# File lib/trestle/resource/builder.rb, line 37 def update_instance(&block) admin.define_adapter_method(:update_instance, &block) end
Protected Instance Methods
normalize_table_options(name, options)
click to toggle source
# File lib/trestle/resource/builder.rb, line 106 def normalize_table_options(name, options) if name.is_a?(Hash) # Default index table name, options = :index, name.reverse_merge(sortable: true) end [name, options.reverse_merge(admin: admin)] end