0
設計docs指出有三個動作允許參數傳遞到模型::sign_up,:sign_in和:account_update。下面的例子(基於他們的文檔)建議我使用before過濾器。是否需要或很好的做法來消毒所有三個設計操作的參數?
protected
def configure_permitted_parameters
devise_parameter_sanitizer.permit(:sign_up, keys: [:email, :username, :website, :invitation_code])
end
他們沒有明確說明這是一個好主意,還消毒參數,其他兩項行動,或者如果它是消毒其他(非設計)模型PARAMS是一個好主意。這是我困惑的地方。我應該添加到上面的代碼,以便它是這樣的?
protected
def configure_permitted_parameters
devise_parameter_sanitizer.permit(:sign_up, keys: [:email, :username, :website, :invitation_code])
devise_parameter_sanitizer.permit(:sign_in, keys: [:email, :username, :password])
devise_parameter_sanitizer.permit(:account_update, keys: [:email, :firstname, :lastname, :password, :password_confirmation, :website])
end
此外,我怎麼知道參數正在轉換爲散列?
這很有道理。所以,我需要爲每個動作提供一種消毒方法。謝謝! – sabaeus