我試圖通過使用mongoid和mongodb而不是普通數據庫的Michael Hartl的rails4教程。我到了必須設置用戶登錄和註銷的位置,這就是我遇到的問題。以下是我用來檢查用戶的電子郵件是否已註冊的代碼。rails 4.0通過mongoid處理空mongodb結果查詢
user = User.find_by(email: params[:session][:email].downcase)
if user && user.authenticate(params[:session][:password])
# sign in and load user page
else
flash[:error] = 'Invalid email/password combination'
render 'new'
# error and re-render signin
end
不幸的是,我遇到了一個未找到的文檔,因爲這是查詢變爲空白時返回的內容。它應該進入其他的,但我得到一個軌道錯誤頁面,返回未找到的mongoid錯誤文檔。我該如何避免這種情況,並讓代碼執行else語句中的內容呢?
謝謝!