假设我有这样的事情:
def new
@user = User.new
end
def create
@user = User.create(params[:user])
if @user.save
flash[:notice] = 'User created'
redirect_to :action => 'list'
else
flash[:error] = 'Some error here!'
render 'new'
end
end
我认为代码很清楚。
这里的问题是,当@user
对象没有成功保存时,我应该渲染new
(如上)还是应该重定向到new
?
我知道重定向到new
用户输入的数据是否丢失,但如果我渲染new
,URL 将/users/create
代替/users/new
(这很难看!)。