params.require(:user).permit(:first_name, :last_name, :email, :password)
private
def user_params(藍色字體標示)
params.require(:user).permit(:first_name, :last_name, :email, :password)
end
params.require(Model名稱).permit(Model欄位1,Model欄位2, ...)
翻成中文params.需要(:user).予許(:first_name...)
也就是說去資料庫撈user這個table裡面的first_name、last_name、email、password欄位資料
P.S.
rails寫法經常把參數封裝起來取個名稱(user_params)並且變成私有(private)
延伸閱讀:
綠色這段@user=User.new(user_params) ←新增時呼叫private裡面user_params方法並指向@user這個變數
class UsersController < ApplicationController def new @user = User.new end def create @user = User.new(user_params) if @user.save session[:user_id] = @user.id redirect_to '/' else redirect_to '/signup' end end private def user_params params.require(:user).permit(:first_name, :last_name, :email, :password) end end