2011-03-07 91 views
2

任何人都知道我可以寫出下面的一行?創建一個從形式params對象和屬性的Rails

email = params[:user][:email] 
    @user = User.new(:email => email, :password => generate_random_string) 

我願意把它寫成

@user = User.new(params[:user]. :password => generate_random_string) 

回答

5

這裏亞去...

@user = User.new(params[:user].merge :password => generate_random_string) 

要非常小心,允許用戶的密碼屬性使用質量設置分配可以有後果。

+0

非常感謝你。它是一個臨時的解決辦法,直到我實現了設計。 – chell 2011-03-07 12:25:46

+0

具體而言,'new'需要的參數的散列,以及'散列#merge'返回一個新的哈希與所傳遞的參數中合併。 – nickgrim 2011-03-07 12:28:37

相關問題