2011-05-15 76 views
6

我有一個存儲了一些用戶信息的數據庫。 我知道例如:User.find(1)將返回用戶ID:1根據不同的字段/列查找記錄?

我應該通過電子郵件找到一個用戶打電話?我搜查了很多,但找不到任何東西。

我也試過User.find(:email => "[email protected]")但它不起作用。

回答

20
+4

我想補充的東西,還有一個[上查詢軌導(http://guides.rubyonrails.org/active_record_querying.html)。 [here](http://guides.rubyonrails.org/active_record_querying.html#dynamic- finders)顯示'find_by_ *'是動態可用的。 – 2012-10-01 07:06:55

1

您還可以查詢

User.where("email = ?", "[email protected]").first 
+0

這是濫用ActiveRecord。你應該使用'User.where(email:'[email protected]')'。 – meagar 2018-01-25 04:02:46

0

通過你剛剛註冊用戶和如何找到這個特定的用戶,並通過實例檢索所有用戶數據的任何機會,

  1. 你想將其存儲在一個會話[:CURRENT_USER] = @user
  2. @user = User.find_by_email(params [:email])
  3. 您想在您的用戶控制器的create方法中執行此操作。
  4. 現在您可以訪問這個新的用戶實例,這對於您希望他們爲他們準備好個人資料頁面的時候會有所幫助。
  5. 希望它不是太脫離主題,如果是的話,希望這有助於您的未來項目!祝你好運!

+1

歡迎來到Stack Overflow!這聽起來像你有一個你想分享的小費,這很好,但它似乎應該在另一個問題上。它看起來不像是一個符合這個問題的「答案」。堆棧溢出嘗試在問題和答案之間保持相當緊密的匹配。如果你喜歡,你甚至可以問自己的問題並自己回答。 – RJHunter 2016-10-23 01:22:38

相關問題