module Dry::Controller
Public Instance Methods
create()
click to toggle source
# File lib/dry/controller.rb, line 59 def create @record = resource_scope.new record_params if @record.save redirect_to collection_path(@resource), notice: "#{model_name.singular.capitalize} was successfully created." else render :new end end
destroy()
click to toggle source
# File lib/dry/controller.rb, line 78 def destroy @record.destroy redirect_to collection_path(@resource), notice: "#{model_name.singular.capitalize} was successfully destroyed." end
edit()
click to toggle source
# File lib/dry/controller.rb, line 56 def edit end
index()
click to toggle source
# File lib/dry/controller.rb, line 46 def index end
new()
click to toggle source
# File lib/dry/controller.rb, line 52 def new @record = resource_scope.new end
show()
click to toggle source
# File lib/dry/controller.rb, line 49 def show end
update()
click to toggle source
# File lib/dry/controller.rb, line 69 def update if @record.update record_params redirect_to collection_path(@resource), notice: "#{model_name.singular.capitalize} was successfully updated." else render :edit end end
Private Instance Methods
collection()
click to toggle source
# File lib/dry/controller.rb, line 113 def collection resource_scope.order 'created_at ASC' end
model_name()
click to toggle source
# File lib/dry/controller.rb, line 109 def model_name resource.model_name end
record_params()
click to toggle source
# File lib/dry/controller.rb, line 129 def record_params params.require(model_name.param_key.to_sym) .permit *self.class._dry_attrs[:write] end
resource()
click to toggle source
# File lib/dry/controller.rb, line 86 def resource @resource ||= Resource.new(controller_name.classify.constantize, attrs_read: self.class._dry_attrs[:read], attrs_write: self.class._dry_attrs[:write], attrs_options: self.class._dry_attrs[:options], relations: self.class._dry_nested_relations, routes: resource_routes ) end
resource_routes()
click to toggle source
# File lib/dry/controller.rb, line 96 def resource_routes ResourceRoutes.new(Rails.application.routes.routes, controller_path) .routes end
resource_scope()
click to toggle source
# File lib/dry/controller.rb, line 101 def resource_scope if b = self.class._dry_scope instance_exec &b else resource.model end end
set_collection()
click to toggle source
# File lib/dry/controller.rb, line 121 def set_collection @collection = collection end
set_record()
click to toggle source
# File lib/dry/controller.rb, line 125 def set_record @record = resource_scope.find params[:id] end
set_resource()
click to toggle source
# File lib/dry/controller.rb, line 117 def set_resource resource end