我在设计注册视图中编写自定义表单字段
<%=
select_tag 'user[show]', options_from_collection_for_select(Show.all, "id", "title")
%>
然后,在注册控制器中
def configure_sign_up_params
devise_parameter_sanitizer.permit(:sign_up, keys:
[:first_name, :last_name, :email, :password, :password_confirmation, :show])
end
提交表单时,我收到错误
ActiveModel::UnknownAttributeError (unknown attribute 'show' for User.):
如果我不尝试允许新参数,并且我提交表单,则控制台会记录
Unpermitted parameters: show
但一切正常,我可以使用这些参数。我该怎么办?
答案 0 :(得分:0)
假设您的用户表中有一列show_id
,并且select标记定位到此列:
<%=
select_tag 'user[show_id]', options_from_collection_for_select(Show.all, "id", "title")
%>
在你的控制器中:
def configure_sign_up_params
devise_parameter_sanitizer.permit(:sign_up, keys:
[:first_name, :last_name, :email, :password, :password_confirmation, :show_id])
end