嗯,问题很有趣:我想知道为什么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 %>