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