【发布时间】:2016-04-04 05:31:30
【问题描述】:
我是 Mongo 的新手。我已经从this 源安装了 Mongodb。我正在使用 mongodb for Rails 应用程序。启动 mongodb 和 rails 后,应用程序加载正常。但是,当我尝试登录时它失败了。当我尝试在 rails 控制台中执行一些操作时,也会发生同样的事情。
这里是型号代码:
def self.authenticate(email, password)
user = find(:first, :conditions => {:email => email})
if user && user.password_hash == BCrypt::Engine.hash_secret(password, user.password_salt)
user
else
nil
end
end
它在if user && user.password_hash == BCrypt::Engine.hash_secret(password, user.password_salt) 失败
这是一个简短的错误:
数据库命令 'create' 失败:{"ok"=>0.0, "errmsg"=>"collection already exists", "code"=>48}
并且,完整的应用程序错误跟踪:
mongo (1.3.1) lib/mongo/db.rb:506:in
command' mongo (1.3.1) lib/mongo/db.rb:284:increate_collection' mongoid (2.2.1) lib/mongoid/collections/master.rb:41:ininitialize' mongoid (2.2.1) lib/mongoid/collection.rb:127:innew' mongoid (2.2.1) lib/mongoid/collection.rb:127:inmaster' mongoid (2.2.1) lib/mongoid/collection.rb:60:infind_one' mongoid (2.2.1) lib/mongoid/contexts/mongo.rb:164:infirst' mongoid (2.2.1) lib/mongoid/criteria.rb:42:inone' mongoid (2.2.1) lib/mongoid/criterion/inclusion.rb:104:infind' mongoid (2.2.1) lib/mongoid/finders.rb:83:infind' actionpack (3.0.3) lib/action_controller/metal/implicit_render.rb:4:insend_action' actionpack (3.0.3) lib/abstract_controller/base.rb:151:inprocess_action' actionpack (3.0.3) lib/action_controller/metal/rendering.rb:11:inprocess_action' actionpack (3.0.3) lib/abstract_controller/callbacks.rb:18:inblock in process_action' activesupport (3.0.3) lib/active_support/callbacks.rb:435:in_run__902337259577170033__process_action__4476240526817474042__callbacks' activesupport (3.0.3) lib/active_support/callbacks.rb:409:in_run_process_action_callbacks' activesupport (3.0.3) lib/active_support/callbacks.rb:93:inrun_callbacks' actionpack (3.0.3) lib/abstract_controller/callbacks.rb:17:inprocess_action' actionpack (3.0.3) lib/action_controller/metal/instrumentation.rb:30:inblock in process_action' activesupport (3.0.3) lib/active_support/notifications.rb:52:inblock in instrument' activesupport (3.0.3) lib/active_support/notifications/instrumenter.rb:21:ininstrument' activesupport (3.0.3) lib/active_support/notifications.rb:52:ininstrument' actionpack (3.0.3) lib/action_controller/metal/instrumentation.rb:29:inprocess_action' actionpack (3.0.3) lib/action_controller/metal/rescue.rb:17:inprocess_action' actionpack (3.0.3) lib/abstract_controller/base.rb:120:inprocess' actionpack (3.0.3) lib/abstract_controller/rendering.rb:40:inprocess' actionpack (3.0.3) lib/action_controller/metal.rb:138:indispatch' actionpack (3.0.3) lib/action_controller/metal/rack_delegation.rb:14:indispatch' actionpack (3.0.3) lib/action_controller/metal.rb:178:inblock in action' actionpack (3.0.3) lib/action_dispatch/routing/route_set.rb:62:incall' actionpack (3.0.3) lib/action_dispatch/routing/route_set.rb:62:indispatch' actionpack (3.0.3) lib/action_dispatch/routing/route_set.rb:27:incall' 机架安装 (0.6.14) lib/rack/mount/route_set.rb:148:inblock in call' rack-mount (0.6.14) lib/rack/mount/code_generation.rb:93:inblock 在识别' 机架安装 (0.6.14) lib/rack/mount/code_generation.rb:75:inoptimized_each' rack-mount (0.6.14) lib/rack/mount/code_generation.rb:92:inrecognize' 机架安装 (0.6.14) lib/rack/mount/route_set.rb:139:incall' actionpack (3.0.3) lib/action_dispatch/routing/route_set.rb:492:incall' mongoid (2.2.1) lib/rack/mongoid/middleware/identity_map.rb:33:inblock in call' mongoid (2.2.1) lib/mongoid.rb:130:inunit_of_work' mongoid (2.2.1) lib/rack/mongoid/middleware/identity_map.rb:33:incall' actionpack (3.0.3) lib/action_dispatch/middleware/best_standards_support.rb:17:incall' actionpack (3.0.3) lib/action_dispatch/middleware/head.rb:14:incall' rack (1.2.4) lib/rack/methodoverride.rb:24:incall' actionpack (3.0.3) lib/action_dispatch/middleware/params_parser.rb:21:incall' actionpack (3.0.3) lib/action_dispatch/middleware/flash.rb:182:incall' actionpack (3.0.3) lib/action_dispatch/middleware/session/abstract_store.rb:149:incall' actionpack (3.0.3) lib/action_dispatch/middleware/cookies.rb:295:incall' actionpack (3.0.3) lib/action_dispatch/middleware/callbacks.rb:46:inblock in call' activesupport (3.0.3) lib/active_support/callbacks.rb:415:in_run_call_callbacks' actionpack (3.0.3) lib/action_dispatch/middleware/callbacks.rb:44:incall' rack (1.2.4) lib/rack/sendfile.rb:106:incall' actionpack (3.0.3) lib/action_dispatch/middleware/remote_ip.rb:48:incall' actionpack (3.0.3) lib/action_dispatch/middleware/show_exceptions.rb:46:incall' railties (3.0.3) lib/rails/rack/logger.rb:13:incall' rack (1.2.4) lib/rack/runtime.rb:17:incall' activesupport (3.0.3) lib/active_support/cache/strategy/local_cache.rb:72:incall' rack (1.2.4) lib/rack/lock.rb:11:inblock in call' 机架 (1.2.4) lib/rack/lock.rb:11:insynchronize' rack (1.2.4) lib/rack/lock.rb:11:incall' actionpack (3.0.3) lib/action_dispatch/middleware/static.rb:30:incall' railties (3.0.3) lib/rails/application.rb:168:incall' railties (3.0.3) lib/rails/application.rb:77:inmethod_missing' railties (3.0.3) lib/rails/rack/log_tailer.rb:14:incall' 机架 (1.2.4) lib/rack/content_length.rb:13:incall' rack (1.2.4) lib/rack/handler/webrick.rb:52:inservice' /Users/reonios/.rvm/rubies/ruby-2.1.7/lib/ruby/2.1.0/webrick/httpserver.rb:138:inservice' /Users/reonios/.rvm/rubies/ruby-2.1.7/lib/ruby/2.1.0/webrick/httpserver.rb:94:inrun' /Users/reonios/.rvm/rubies/ruby-2.1.7/lib/ruby/2.1.0/webrick/server.rb:295:in `block in start_thread'
非常感谢任何帮助。
【问题讨论】:
-
你能显示型号和代码吗?
-
@HarryBomrah 我已经添加了型号代码
标签: ruby-on-rails mongodb