Rails parameters are different actual sending parameters
Parameters sending from the postman:
{
"first_name": "Arun",
"last_name": "Deepak",
"email": "[email protected]",
"password": "Abc@123",
"confirm_pasword": "Abc@123",
"user_type": "seller"
}
Params in controller:
{
"first_name"=>"Arun", "last_name"=>"Deepak",
"email"=>"[email protected]",
"password"=>"[FILTERED]", "confirm_pasword"=>"Abc@123",
"user_type"=>"seller",
"user"=>{"email"=>"[email protected]", "user_type"=>"seller"}
}
Controller:
def create
@user = User.create!(user_params)
render json: @user
end
...
def user_params
params.require(:user).permit(:email, :user_type, :password, :password_confirmation)
end
Rails routes:
namespace :api do
namespace :v1 do
resources :users
end
end
Here, How is the parameter changing in the controller?
I know I'm sending the wrong parameters but How are user_params accepting the wrong parameters?
How the request parameters have been modified?