diff options
author | mguetlein <martin.guetlein@gmail.com> | 2011-01-31 09:45:40 +0100 |
---|---|---|
committer | mguetlein <martin.guetlein@gmail.com> | 2011-01-31 09:45:40 +0100 |
commit | e9af5334f70c5a80ad5f63b6028a3d0a27340360 (patch) | |
tree | 403f64f9fc3b8aedaae82cbeb066cb92292aae41 /lib | |
parent | d3336b01ad57209a4b9cb3677c798d97e6c80ec7 (diff) |
update serach facilities, minor test fixes
Diffstat (limited to 'lib')
-rw-r--r-- | lib/data_mapper_util.rb | 49 |
1 files changed, 13 insertions, 36 deletions
diff --git a/lib/data_mapper_util.rb b/lib/data_mapper_util.rb index 25d9d61..23f52f5 100644 --- a/lib/data_mapper_util.rb +++ b/lib/data_mapper_util.rb @@ -8,53 +8,30 @@ module Lib prop_names = model.properties.collect{|p| p.name.to_s if p.is_a?DataMapper::Property::Object} params.keys.each do |k| key = k.to_s - unless prop_names.include?(key) - key = key.from_rdf_format + if (key == "subjectid") + params.delete(k) + else unless prop_names.include?(key) - key = key+"_uri" + key = key.from_rdf_format unless prop_names.include?(key) - key = key+"s" + key = key+"_uri" unless prop_names.include?(key) - raise OpenTox::BadRequestError.new "no attribute found: '"+k.to_s+"'" + key = key+"s" + unless prop_names.include?(key) + raise OpenTox::BadRequestError.new "no attribute found: '"+k.to_s+"'" + end end end end + params[key.to_sym] = params.delete(k) end - params[key.to_sym] = params.delete(k) end params end -# def self.all(model, filter_params) -# prop_names = model.properties.collect{|p| p.name.to_s if p.is_a?DataMapper::Property::Object} -# puts prop_names.inspect -# -# filter_params.keys.each do |k| -# key = k.to_s -# unless prop_names.include?(key) -# key = key.from_rdf_format -# unless prop_names.include?(key) -# key = key+"_uri" -# unless prop_names.include?(key) -# key = key+"s" -# unless prop_names.include?(key) -# err = "no attribute found: '"+k.to_s+"'" -# if $sinatra -# $sinatra.halt 400,err -# else -# raise err -# end -# end -# end -# end -# end -# filter_params[key.to_sym] = filter_params.delete(k) -# end -# puts filter_params.inspect -# -# #model.all(filter_params) -# model.all(:model_uris.like => "%") -# end + def self.all(model, filter_params) + model.all(check_params(model,filter_params)) + end end end
\ No newline at end of file |