0
我试图为编辑视图创建表单但我得到“表单中的第一个参数不能包含零或为空”。Rails 5 - 表单中的第一个参数不能包含零或为空
我对新视图与之配合类似的形式:
<%= form_for(@user, url: signup_path) do |f| %>
我想用一个共享的形式编辑和新两个,但我不能管理检索@user使其工作。谢谢你的帮助!
视图/用户/ edit.html.erb>
<%= form_for(@user) do |f| %>
<%= render 'shared/error_messages' %>
<%= f.label :name %>
<%= f.text_field :name, class: 'form-control' %>
<%= f.label :email %>
<%= f.email_field :email, class: 'form-control' %>
<%= f.label :password %>
<%= f.password_field :password, class: 'form-control' %>
<%= f.label :password_confirmation, "Confirmation" %>
<%= f.password_field :password_confirmation, class: 'form-control' %>
<%= f.submit "Save changes", class: "btn btn-primary" %>
<% end %>
users_controller.rb>
def update
@user = User.find(params[:id])
if @user.update_attributes(user_params)
flash[:success] = "Profile updated"
redirect_to @user
else
flash.now[:danger] = 'There was an error updating your account, try again'
render 'edit'
end
end
的routes.rb>
Rails.application.routes.draw do
root 'static_pages#home'
get '/about', to: 'static_pages#about'
get '/contact', to: 'static_pages#contact'
get '/signup', to: 'users#new'
post '/signup', to: 'users#create'
get '/login', to: 'sessions#new'
post '/login', to: 'sessions#create'
delete '/logout', to: 'sessions#destroy'
resources :users
end