因此,在用户注册后,我将其重定向到我的其他信息页面,我会收集更多信息。但是,我的设计/实现出了问题,因为rails说我缺少用户/创建模板
这是我的用户控制器
class UsersController < ApplicationController
def show
@user = User.find(params[:id])
end
def new
@user = User.new
end
def additional_info
@user = User.new(user_addinfo)
if @user.save
redirect_to show_path
end
end
def create
@user = User.new(user_params)
if @user.save
# UserMailer.welcome_email(@user).deliver
sign_in @user
redirect_to additional_info_path
flash[:success] = "Welcome to InYourShoes!"
#return @user
else
render'new'
end
end
private
def user_params
params.require(:user).permit(:name, :email, :password, :password_confirmation)
end
def user_addinfo
params.permit(:year)
end
end
def show是我想在重定向到additional_info
页面后显示的用户个人资料页面
def additional_info
只是从私有方法def user_addinfo
def create是注册过程。
输入基本用户信息后,它会被重定向到其他,这很好。但是在额外的之后,它说我错过了用户/创建模板,但我的代码我试图重定向到show_path
和#usersshow
,仍然无法正常工作
有什么建议吗?对不起,如果这看起来很直观,但我是铁杆新手。
答案 0 :(得分:0)
我认为你的问题出在additional_info方法中,正如我在评论中所说的那样。你在做什么:
所以你的additional_info方法会变成:
def additional_info
user = User.find session[:user_id]
user.update params[:user]
redirect_to user_path #show action
end