Files
openfoodnetwork/app/controllers/admin/inventory_items_controller.rb
2020-03-21 20:30:34 +00:00

34 lines
1018 B
Ruby

module Admin
class InventoryItemsController < ResourceController
respond_to :json
prepend_before_filter :permit_params
respond_override update: { json: {
success: lambda { render_as_json @inventory_item },
failure: lambda { render json: { errors: @inventory_item.errors.full_messages }, status: :unprocessable_entity }
} }
respond_override create: { json: {
success: lambda { render_as_json @inventory_item },
failure: lambda { render json: { errors: @inventory_item.errors.full_messages }, status: :unprocessable_entity }
} }
private
def permit_params
params.require(:inventory_item).permit!
end
# Overriding Spree method to load data from params here so that
# we can authorise #create using an object with required attributes
def build_resource
if parent_data.present?
parent.public_send(controller_name).build
else
model_class.new(params[object_name]) # This line changed
end
end
end
end