我想要一个单独的链接,仅用于在 ruby on rails 中更改密码!!我该怎么办



我不想在设计中更改密码选项(编辑注册)。 相反,我想添加一个链接或表格,用于在单独的页面中更改密码。 谁能帮我!!

使用简单的 CRUD 方法,这很容易做到。为您的用户创建一个编辑视图,使用针对 Devise 密码字段的 Rails 表单。

edit.html.erb(在视图的用户文件夹中):

<%= form_for(@user) do |f| %>
  <%= f.label :password %>
  <%= f.text_field :password  %>
  <%= f.label :password_confirmation %>
  <%= f.text_field :password_confirmation %>
  <%= f.submit %>
<% end %>

在用户控制器中:

def edit
  @user = User.find(params[:id])
end
def update
  @user = User.find(params[:id])
  if @user.update(user_params)
    redirect_to @user, notice: 'User was successfully updated.'
  else
    render :edit
  end
end
private
  def user_params
    params.require(:user).permit(:password, :password_confirmation)
  end

确保在你的config/routes.rb文件中也有resources :users

指向编辑视图的链接如下所示:

<%= link_to 'Edit User', edit_user_path %>

最新更新