我正在开发Cloud9 IDE中的第一个Rails应用程序。每当我尝试使用redirect_to
时,网页就会挂起。我做错了什么?
我有一个UsersController类:
def index @users = User.all end def new @user = User.new end def create @user = User.new(user_params) @user.save redirect_to users_path end private def user_params params.require(:user).permit(:name, :email) end
在index.html.erb视图中,我创建了一个用于添加用户的小表单,然后是一个显示所有用户的列表。
我想创建一个新用户,然后重定向回索引视图以显示添加到列表中的新用户。
这是index.html.erb表单代码
<%= form_for :user, url: {action: 'create'} do |u| %>
<%= u.label :name %>
<%= u.text_field :name %>
<%= u.label :email %>
<%= u.text_field :email %>
<%= u.submit %>
<% end %>
当我在创建表单上点击提交时,网页会挂起。如果我重新加载它,那么它已经工作 - 它显示新用户已经创建并添加到列表中。
我是Rails的新手,所以不知道我的语法是否正确,但我尝试了一大堆使用redirect_to
的方法 - 它们都不起作用。救命啊!
为了记录,我的路线是:
users_index GET /users/index(.:format) users#index users GET /users(.:format) users#index POST /users(.:format) users#create new_user GET /users/new(.:format) users#new edit_user GET /users/:id/edit(.:format) users#edit user GET /users/:id(.:format) users#show PATCH /users/:id(.:format) users#update PUT /users/:id(.:format) users#update DELETE /users/:id(.:format) users#destroy root GET / users#index