update_attributes在另一个“更新”操作中不起作用

时间:2015-06-12 20:13:30

标签: ruby-on-rails-4 update-attributes

嗯,问题很有趣:我想知道为什么update_attributes在我称之为“update_name”的更新操作中不起作用。每次调用动作“update_name”时,都会显示flash“not success”。正如我所见,一切都写得正确,但你可以告诉我这里有什么问题吗?

的routes.rb

resources :users do
  member do
    patch :update_name
  end
end

users_controller.rb

def edit
  @user = User.find(params[:id])
end

def update_name
  @user = User.find(params[:id])
  if @user.update_attributes(user_params2)
    flash[:success] = "name updated"
    redirect_to @user
  else
    flash[:danger] = "not success"
    render 'edit'
  end
end

private
  def user_params2
    params.require(:user).permit(:name, :email)
  end

用户/ edit.html.erb

<%= form_for @user, :url => update_name_user_path(@user) do |f| %>

  <%= f.label :name %>
  <%= f.text_field :name %>

  <%= f.label :email_field %>
  <%= f.text_field :email %>

  <%= f.submit %>
<% end %>

0 个答案:

没有答案