2014-04-20 73 views
0

我想創建一個簡單的註冊表單使用Sinatra和數據映射器,只有當用戶已經不存在時才註冊用戶。問題似乎是沒有用戶使用下面的代碼創建如何防止用戶註冊時Sinatra

def signup(username, password, email) 
    @user = User.new(username: username, password: password, email: email) 
    @user.save if not User.all(:username => username, :email => email) 
end 

我一直在尋找,但對於我的生活無法弄清楚。有人能告訴我我做錯了什麼嗎?

回答

0

試試這個:

@user = User.first_or_create(:username => username, :email => email) 

呦可以使用區長與西納特拉,使您的生活更輕鬆。檢查演示here

注:除非有利於如果超過負的條件

+0

謝謝,我會用它。 –

0

我做寶石Vxod爲「社會和密碼授權解決方案」任何耙框架,任何ORM。

當前在Sinatra和Mongoid上測試Vxod