我在提交表单后收到此错误。
#
的未定义方法`user_url'我没有在路由文件中使用resources :users
,我猜这就是我收到错误的原因。
我的routes.rb
TaskManager::Application.routes.draw do
get "welcome/index"
root 'welcome#index'
get 'users/new' => 'users#new'
post 'users/' => 'users#create'
post 'users/:first_name' => 'users#show'
end
和我的users_controller.rb
class UsersController < ApplicationController
def new
@user = User.new
end
def create
@user = User.new(user_params)
@user.save
if @user.save
redirect_to @user
else
end
end
def show
@user = User.find(params[:first_name])
end
private
def user_params
params.require(:user).permit(:first_name, :last_name, :email)
end
end
答案 0 :(得分:2)
从你的代码中,我猜你想要的路线是post 'users/' => 'users#create'
。要实现这一点,我需要做的是将该行更改为post 'users/' => 'users#create', :as => 'user'
。