如何为 Devise 模型的多个属性添加强参数?

How to add strong parameters to multiple attributes of a Devise model?

我创建了一个 Devise 模型,并添加了自定义属性。 This 展示了如何向一个自定义属性添加强参数,但我终究无法弄清楚如何向多个属性添加强参数。

此代码有效:

def configure_permitted_parameters
  devise_parameter_sanitizer.for(:sign_up) << :attribute
end

但是这些都会引发语法错误:

#1
def configure_permitted_parameters
  devise_parameter_sanitizer.for(:sign_up) << :attribute :attribute2
end

#2
def configure_permitted_parameters
  devise_parameter_sanitizer.for(:sign_up) << :attribute, :attribute2
end

#3
def configure_permitted_parameters
  devise_parameter_sanitizer.for(:sign_up) << (:attribute, :attribute2)
end

#4
def configure_permitted_parameters
  devise_parameter_sanitizer.for(:sign_up) << :attribute; :attribute2
end

添加多个属性的正确语法是什么?

如果您在 linked documentation on strong parameters 中进一步向下滚动,您应该会看到如何允许多个属性:

def configure_permitted_parameters
  devise_parameter_sanitizer.for(:sign_up) { |su| su.permit(:attribute; :attribute2) }
end