2011-03-07 102 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

相关问题