In my app I create the following model:
class User
include Dynamoid::Document
# fields
field :user_id, type: Integer
field :name, type: String
field :age, type: Integer
end
Then in my route:
# try search
get '/user/:user_name' do
user = User.where(name: params[:user_name])
if user
json success: true, user: user
else
json success: false, message: 'User does not exist'
end
end
But I am getting this: 2016-06-14 16:43:14 - NoMethodError - undefined method 'match' for nil:NilClass:
What I am doing wrong? I want to use ActiveRecords
Adding more details:
/home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/aws-sdk-core-2.3.7/lib/aws-sdk-core/endpoint_provider.rb:67:in
block in partition_matching_region' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/aws-sdk-core-2.3.7/lib/aws-sdk-core/endpoint_provider.rb:66:ineach' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/aws-sdk-core-2.3.7/lib/aws-sdk-core/endpoint_provider.rb:66:infind' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/aws-sdk-core-2.3.7/lib/aws-sdk-core/endpoint_provider.rb:66:inpartition_matching_region' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/aws-sdk-core-2.3.7/lib/aws-sdk-core/endpoint_provider.rb:55:inget_partition' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/aws-sdk-core-2.3.7/lib/aws-sdk-core/endpoint_provider.rb:26:inendpoint_for' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/aws-sdk-core-2.3.7/lib/aws-sdk-core/endpoint_provider.rb:10:inresolve' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/aws-sdk-core-2.3.7/lib/aws-sdk-core/endpoint_provider.rb:80:inresolve' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/aws-sdk-core-2.3.7/lib/aws-sdk-core/plugins/regional_endpoint.rb:24:inblock in <class:RegionalEndpoint>' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/aws-sdk-core-2.3.7/lib/seahorse/client/configuration.rb:64:incall' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/aws-sdk-core-2.3.7/lib/seahorse/client/configuration.rb:64:incall' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/aws-sdk-core-2.3.7/lib/seahorse/client/configuration.rb:199:inblock in resolve_defaults' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/aws-sdk-core-2.3.7/lib/seahorse/client/configuration.rb:57:ineach' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/aws-sdk-core-2.3.7/lib/seahorse/client/configuration.rb:57:ineach' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/aws-sdk-core-2.3.7/lib/seahorse/client/configuration.rb:198:inresolve_defaults' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/aws-sdk-core-2.3.7/lib/seahorse/client/configuration.rb:194:invalue_at' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/aws-sdk-core-2.3.7/lib/seahorse/client/configuration.rb:183:inblock in resolve' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/2.1.0/set.rb:263:ineach_key' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/2.1.0/set.rb:263:ineach' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/aws-sdk-core-2.3.7/lib/seahorse/client/configuration.rb:183:inresolve' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/aws-sdk-core-2.3.7/lib/seahorse/client/configuration.rb:171:inapply_defaults' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/aws-sdk-core-2.3.7/lib/seahorse/client/configuration.rb:144:inbuild!' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/aws-sdk-core-2.3.7/lib/seahorse/client/base.rb:68:inbuild_config' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/aws-sdk-core-2.3.7/lib/seahorse/client/base.rb:19:ininitialize' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/aws-sdk-core-2.3.7/lib/seahorse/client/base.rb:105:innew' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/dynamoid-1.1.0/lib/dynamoid/adapter_plugin/aws_sdk_v2.rb:15:inconnect!' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/dynamoid-1.1.0/lib/dynamoid/adapter.rb:31:inadapter' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/dynamoid-1.1.0/lib/dynamoid/adapter.rb:124:inblock in scan' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/dynamoid-1.1.0/lib/dynamoid/adapter.rb:53:inbenchmark' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/dynamoid-1.1.0/lib/dynamoid/adapter.rb:124:inscan' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/dynamoid-1.1.0/lib/dynamoid/criteria/chain.rb:142:inblock in records_via_scan' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/dynamoid-1.1.0/lib/dynamoid/criteria/chain.rb:115:ineach' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/dynamoid-1.1.0/lib/dynamoid/criteria/chain.rb:115:ineach' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/dynamoid-1.1.0/lib/dynamoid/criteria/chain.rb:115:into_a' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/dynamoid-1.1.0/lib/dynamoid/criteria/chain.rb:115:inArray' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/dynamoid-1.1.0/lib/dynamoid/criteria/chain.rb:115:inrecords' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/dynamoid-1.1.0/lib/dynamoid/criteria/chain.rb:95:ineach' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/activesupport-4.2.6/lib/active_support/core_ext/object/json.rb:128:into_a' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/activesupport-4.2.6/lib/active_support/core_ext/object/json.rb:128:inas_json' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/activesupport-4.2.6/lib/active_support/core_ext/object/json.rb:159:inblock in as_json' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/activesupport-4.2.6/lib/active_support/core_ext/object/json.rb:159:ineach' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/activesupport-4.2.6/lib/active_support/core_ext/object/json.rb:159:inmap' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/activesupport-4.2.6/lib/active_support/core_ext/object/json.rb:159:inas_json' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/activesupport-4.2.6/lib/active_support/json/encoding.rb:35:inencode' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/activesupport-4.2.6/lib/active_support/json/encoding.rb:22:inencode' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/activesupport-4.2.6/lib/active_support/core_ext/object/json.rb:37:into_json_with_active_support_encoder' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/multi_json-1.11.2/lib/multi_json/adapters/json_common.rb:19:indump' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/multi_json-1.11.2/lib/multi_json/adapter.rb:25:indump' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/multi_json-1.11.2/lib/multi_json.rb:136:indump' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/sinatra-contrib-1.4.6/lib/sinatra/json.rb:113:inblock in resolve_encoder_action' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/sinatra-contrib-1.4.6/lib/sinatra/json.rb:112:ineach' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/sinatra-contrib-1.4.6/lib/sinatra/json.rb:112:inresolve_encoder_action' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/sinatra-contrib-1.4.6/lib/sinatra/json.rb:98:injson' /home/ll/fx-service/app/routes/users.rb:196:inblock in ' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/sinatra-1.4.6/lib/sinatra/base.rb:1610:incall' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/sinatra-1.4.6/lib/sinatra/base.rb:1610:inblock in compile!' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/sinatra-1.4.6/lib/sinatra/base.rb:974:in[]' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/sinatra-1.4.6/lib/sinatra/base.rb:974:inblock (3 levels) in route!' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/sinatra-1.4.6/lib/sinatra/base.rb:993:inroute_eval' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/sinatra-1.4.6/lib/sinatra/base.rb:974:inblock (2 levels) in route!' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/sinatra-1.4.6/lib/sinatra/base.rb:1014:inblock in process_route' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/sinatra-1.4.6/lib/sinatra/base.rb:1012:incatch' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/sinatra-1.4.6/lib/sinatra/base.rb:1012:inprocess_route' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/sinatra-1.4.6/lib/sinatra/base.rb:972:inblock in route!' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/sinatra-1.4.6/lib/sinatra/base.rb:971:ineach' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/sinatra-1.4.6/lib/sinatra/base.rb:971:inroute!' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/sinatra-1.4.6/lib/sinatra/base.rb:1084:inblock in dispatch!' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/sinatra-1.4.6/lib/sinatra/base.rb:1066:inblock in invoke' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/sinatra-1.4.6/lib/sinatra/base.rb:1066:incatch' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/sinatra-1.4.6/lib/sinatra/base.rb:1066:ininvoke' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/sinatra-1.4.6/lib/sinatra/base.rb:1081:indispatch!' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/sinatra-1.4.6/lib/sinatra/base.rb:906:inblock in call!' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/sinatra-1.4.6/lib/sinatra/base.rb:1066:inblock in invoke' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/sinatra-1.4.6/lib/sinatra/base.rb:1066:incatch' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/sinatra-1.4.6/lib/sinatra/base.rb:1066:ininvoke' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/sinatra-1.4.6/lib/sinatra/base.rb:906:incall!' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/sinatra-1.4.6/lib/sinatra/base.rb:894:incall' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-cors-0.4.0/lib/rack/cors.rb:80:incall' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-protection-1.5.3/lib/rack/protection/xss_header.rb:18:incall' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-protection-1.5.3/lib/rack/protection/base.rb:49:incall' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-protection-1.5.3/lib/rack/protection/base.rb:49:incall' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-protection-1.5.3/lib/rack/protection/path_traversal.rb:16:incall' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-protection-1.5.3/lib/rack/protection/json_csrf.rb:18:incall' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-protection-1.5.3/lib/rack/protection/base.rb:49:incall' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-protection-1.5.3/lib/rack/protection/base.rb:49:incall' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-protection-1.5.3/lib/rack/protection/frame_options.rb:31:incall' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-1.6.4/lib/rack/session/abstract/id.rb:225:incontext' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-1.6.4/lib/rack/session/abstract/id.rb:220:incall' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-1.6.4/lib/rack/logger.rb:15:incall' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/sinatra-1.4.6/lib/sinatra/base.rb:211:incall' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-1.6.4/lib/rack/head.rb:13:incall' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-1.6.4/lib/rack/methodoverride.rb:22:incall' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/sinatra-1.4.6/lib/sinatra/show_exceptions.rb:21:incall' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/sinatra-1.4.6/lib/sinatra/base.rb:181:incall' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/sinatra-1.4.6/lib/sinatra/base.rb:2021:incall' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-cors-0.4.0/lib/rack/cors.rb:80:incall' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-1.6.4/lib/rack/tempfile_reaper.rb:15:incall' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-1.6.4/lib/rack/lint.rb:49:in_call' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-1.6.4/lib/rack/lint.rb:37:incall' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-1.6.4/lib/rack/showexceptions.rb:24:incall' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-1.6.4/lib/rack/commonlogger.rb:33:incall' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/sinatra-1.4.6/lib/sinatra/base.rb:218:incall' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-1.6.4/lib/rack/chunked.rb:54:incall' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-1.6.4/lib/rack/content_length.rb:15:incall' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/thin-1.6.4/lib/thin/connection.rb:86:inblock in pre_process' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/thin-1.6.4/lib/thin/connection.rb:84:incatch' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/thin-1.6.4/lib/thin/connection.rb:84:inpre_process' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/thin-1.6.4/lib/thin/connection.rb:53:inprocess' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/thin-1.6.4/lib/thin/connection.rb:39:inreceive_data' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/eventmachine-1.0.8/lib/eventmachine.rb:193:inrun_machine' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/eventmachine-1.0.8/lib/eventmachine.rb:193:inrun' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/thin-1.6.4/lib/thin/backends/base.rb:73:instart' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/thin-1.6.4/lib/thin/server.rb:162:instart' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-1.6.4/lib/rack/handler/thin.rb:19:inrun' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-1.6.4/lib/rack/server.rb:286:instart' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-1.6.4/lib/rack/server.rb:147:instart' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/rack-1.6.4/bin/rackup:4:in<top (required)>' /home/jcastelli/.rbenv/versions/2.1.2/bin/rackup:23:inload' /home/jcastelli/.rbenv/versions/2.1.2/bin/rackup:23:in<top (required)>' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/ruby-debug-ide-0.6.1.beta2/lib/ruby-debug-ide.rb:88:indebug_load' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/ruby-debug-ide-0.6.1.beta2/lib/ruby-debug-ide.rb:88:indebug_program' /home/jcastelli/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/ruby-debug-ide-0.6.1.beta2/bin/rdebug-ide:130:in' -e:1:inload' -e:1:in'