Class: Spree::Api::ResourceController
- Inherits:
-
BaseController
- Object
- ActionController::Base
- BaseController
- Spree::Api::ResourceController
- Defined in:
- app/controllers/spree/api/resource_controller.rb
Direct Known Subclasses
Instance Attribute Summary
Attributes inherited from BaseController
Instance Method Summary collapse
Instance Method Details
#create ⇒ Object
30 31 32 33 34 35 36 37 38 39 40 41 |
# File 'app/controllers/spree/api/resource_controller.rb', line 30 def create :create, model_class @object = model_class.new(permitted_resource_params) instance_variable_set("@#{object_name}", @object) if @object.save respond_with(@object, status: 201, default_template: :show) else invalid_resource!(@object) end end |
#destroy ⇒ Object
53 54 55 56 57 58 59 60 61 62 63 |
# File 'app/controllers/spree/api/resource_controller.rb', line 53 def destroy :destroy, @object if @object.destroy respond_with(@object, status: 204) else invalid_resource!(@object) end rescue ActiveRecord::DeleteRestrictionError render "spree/api/errors/delete_restriction", status: 422 end |
#index ⇒ Object
6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
# File 'app/controllers/spree/api/resource_controller.rb', line 6 def index collection_scope = model_class.accessible_by(current_ability, :read) if params[:ids] ids = params[:ids].split(",").flatten collection_scope = collection_scope.where(id: ids) else collection_scope = collection_scope.ransack(params[:q]).result end @collection = paginate(collection_scope) instance_variable_set("@#{controller_name}", @collection) respond_with(@collection) end |
#new ⇒ Object
25 26 27 28 |
# File 'app/controllers/spree/api/resource_controller.rb', line 25 def new :new, model_class respond_with(model_class.new) end |
#show ⇒ Object
21 22 23 |
# File 'app/controllers/spree/api/resource_controller.rb', line 21 def show respond_with(@object) end |
#update ⇒ Object
43 44 45 46 47 48 49 50 51 |
# File 'app/controllers/spree/api/resource_controller.rb', line 43 def update :update, @object if @object.update_attributes(permitted_resource_params) respond_with(@object, status: 200, default_template: :show) else invalid_resource!(@object) end end |