I used rails3.2.3 with mongoid gem for mongodb database. I have following code
user = User.find_by(username: login)
But this code gives error when the posted username not match with the any document’s username. The error is like this:Problem:
Document(s) not found for class User with id(s) 5010cdc81d41c8d30b0000405.
Summary:
When calling User.find with an id or array of ids, each parameter must match a document in the database or this error will be raised. The search was for the id(s): 5010cdc81d41c8d30b0000405 ... (1 total) and the following ids were not found: 5010cdc81d41c8d30b0000405.
Resolution:
Search for an id that is in the database or set the Mongoid.raise_not_found_error configuration option to false, which will cause a nil to be returned instead of raising this error when searching for a single id, or only the matched documents when searching for multiples.
I don’t have any idea to solve this problem. Please help me. Thanks in advance.
For this use
user = User.find_or_create_by(username: login)instead of
user = User.find_by(username: login)