Class: Spree::Api::RelationsController
- Inherits:
-
V2::BaseController
- Object
- V2::BaseController
- Spree::Api::RelationsController
- Includes:
- ActionController::MimeResponds
- Defined in:
- app/controllers/spree/api/relations_controller.rb
Instance Method Summary collapse
Instance Method Details
#create ⇒ Object
11 12 13 14 15 16 17 18 19 20 21 |
# File 'app/controllers/spree/api/relations_controller.rb', line 11 def create :create, Relation @relation = @product.relations.new(relation_params) @relation.relatable = @product @relation. = Spree::Variant.find(relation_params[:related_to_id]).product if @relation.save respond_with(@relation, status: 201, default_template: :show) else invalid_resource!(@relation) end end |
#destroy ⇒ Object
44 45 46 47 48 |
# File 'app/controllers/spree/api/relations_controller.rb', line 44 def destroy :destroy, Relation @relation.destroy respond_with(@relation, status: 204) end |
#update ⇒ Object
23 24 25 26 27 28 29 30 |
# File 'app/controllers/spree/api/relations_controller.rb', line 23 def update :update, Relation if @relation.update(relation_params) respond_with(@relation, status: 200, default_template: :show) else invalid_resource!(@relation) end end |
#update_positions ⇒ Object
32 33 34 35 36 37 38 39 40 41 42 |
# File 'app/controllers/spree/api/relations_controller.rb', line 32 def update_positions :update, Relation params[:positions].each do |id, index| model_class.where(id:).update_all(position: index) end respond_to do |format| format.json { head :ok } format.js { render plain: 'Ok' } end end |