ruby on rails - syntax error, unexpected ',', expecting => ...| u.permit( roles: [], :email,:password, :password_confirma... ... ^ -
i using gem 'devise' in project. difference between these 2 lines of code :
 devise_parameter_sanitizer.for(:sign_up)  { |u| u.permit( :email, :password, :password_confirmation, roles: [] ) }   and
devise_parameter_sanitizer.for(:sign_up)  { |u| u.permit(roles: [], :email, :password, :password_confirmation ) }   because when tried second 1 getting error:
syntax error, unexpected ',', expecting => ...| u.permit( roles: [], :email,:password, :password_confirma... ... ^      
ruby has special syntax sugar argument, hash. must pass last.
this
u.permit( :email, :password, :password_confirmation, roles: [] )   essentially means this
u.permit( :email, :password, :password_confirmation, { roles: [] } )   in second example, you're trying pass first argument, confuses ruby parser. use first form.
Comments
Post a Comment