14873: Fixes parameter handling (WIP)
authorLucas Di Pentima <ldipentima@veritasgenetics.com>
Wed, 27 Mar 2019 01:38:43 +0000 (22:38 -0300)
committerLucas Di Pentima <ldipentima@veritasgenetics.com>
Wed, 27 Mar 2019 01:38:43 +0000 (22:38 -0300)
Arvados-DCO-1.1-Signed-off-by: Lucas Di Pentima <ldipentima@veritasgenetics.com>

services/api/app/controllers/application_controller.rb
services/api/lib/load_param.rb

index 57463fe6a5963cf5a894f2582bbfaff6fb860774..b613e97a10133adf5be8160057d66b31ed3a84a6 100644 (file)
@@ -323,7 +323,9 @@ class ApplicationController < ActionController::Base
   def resource_attrs
     return @attrs if @attrs
     @attrs = params[resource_name]
-    if @attrs.is_a? String
+    if @attrs.nil?
+      @attrs = {}
+    elsif @attrs.is_a? String
       @attrs = Oj.strict_load @attrs, symbol_keys: true
     end
     unless [Hash, ActionController::Parameters].include? @attrs.class
index e7cb21fc77e579dd75bd89543477425f0af1746b..a08b8b78a532d90fce3bb79deba6b6aabe3d5031 100644 (file)
@@ -17,7 +17,7 @@ module LoadParam
   def load_where_param
     if params[:where].nil? or params[:where] == ""
       @where = {}
-    elsif params[:where].is_a? Hash
+    elsif [Hash, ActionController::Parameters].include? params[:where].class
       @where = params[:where]
     elsif params[:where].is_a? String
       begin