user9128564
user9128564

Reputation:

am having "ActiveModel::ForbiddenAttributesError in UsersController#create"

please i try running this code, but i do have ActiveModel::ForbiddenAttributesError in UsersController#create error, how can i fix it please

class UsersController < ApplicationController

  def show
    @user = User.find(params[:id])
    #debuger
  end

  def agent_signup
    @user = User.new
  end

  def create
    @user = User.new(params[:user])    # Not the final implementation!
    if @user.save
      # Handle a successful save.
    else
      render 'agent_signup'
    end
  end

   private

    def user_params
      params.require(:user).permit(:name, :email, #:password,
                                   #:password_confirmation
                                    )
    end
end

enter image description here

Upvotes: 0

Views: 49

Answers (2)

user9461820
user9461820

Reputation:

Try this solution.You need to permit params.

def create
  @user = User.new(user_params)
   if @user.save
     # Handle a successful save.
   else
    render 'agent_signup'
   end
end

Upvotes: 0

GorillaApe
GorillaApe

Reputation: 3641

It should be

# Wrong
@user = User.new(params[:user])    # Not the final implementation!
# Correct
@user = User.new(user_params)    # Not the final implementation!

In order to use permitted params

Upvotes: 1

Related Questions