我有一个用户对象,他可以更新他的个人资料,其中包括姓名、用户名、密码(空白)、密码确认(空白)、电子邮件、电子邮件确认(空白)、简历和图片 url。
我的模型规定(blank)
必须填写所有内容。但是如果您的管理员和您只是去用户页面更新用户的角色 - 作为管理员,您不应该填写您显然不知道的用户数据。
那么如何解决这个问题呢?我应该创建一个用户列表,旁边有一个下拉列表吗?这不是,本质上,一个巨大的形式吗?如果是这样 - 这将如何创建?
本质上:处理这种情况的最佳方法是什么?
这是当前用户获取更新的方式
def update
@user = User.friendly.find(params[:id])
@user.update_attributes(user_update_params)
if @user.save
render :show
else
render :edit
end
end
private
def user_update_params
params.require(:user).permit(:name, :user_name, :email, :email_confirmation, :password,
:password_confirmation, :bio, :picture_url, :role)
end