2016-09-30 115 views
1

这是显示必须通过哈希错误/注册

When assigning attributes, you must pass a hash as an argument. 

我试图通过URL像这样/users/sign_up?account=571917355

registrations_controller.rb通过PARAMS错误

def new 
    @user = User.new(params[:account]) 
end 

是否设计了一些不允许此功能的功能?我搜索了,但没有任何外面似乎有助于修复错误。我甚至不确定这个错误的含义。

+0

必须传递参数这样User.new(:帐户=> PARAMS [:帐户]) – Navin

回答

1

对于设计新

before_filter :configure_permitted_parameters, if: :devise_controller? 

    protected 

    def configure_permitted_parameters 
    devise_parameter_sanitizer.for(:sign_up).push(:account) 
    end 

devise_parameter_sanitizer.permit(:sign_up, keys: [:account]) 

更多这里info

0

它应该是一个发布请求和参数有喜欢这个

user[:account] 

URL应该喜欢这个/ sign_up?用户[帐户] = 571917355 &用户[名称] = XYZ