1

我試圖延長間隙控制器通過一些其他形式的元素擴展間隙寶石控制器

我目前已經做了以下,但它似乎沒有奏效,並返回ActiveModel::ForbiddenAttributesError

class UsersController < Clearance::UsersController 
    private 

    def user_from_params 
    params.require(:user).permit(:first_name, :last_name, :mobile, :email, :password, :password_confirmation) 
    end 

end 
+0

你可以分享處理'create'和'update'操作的控制器代碼嗎? –

+0

https://github.com/thoughtbot/clearance/blob/master/app/controllers/clearance/users_controller.rb –

+0

似乎已經更新到user_params –

回答

2

創建操作調用user_from_params,它明確調用Clearance user_params來驗證強參數。定義在派生類中的user_from_params沒有被調用,因此是例外。

您可以在派生類user_params中命名強參數方法。然後派生的方法將簡單地覆蓋基類中同名的方法,而不管基方法是否爲私有。