我正在阅读 Michael Hartl 在http://ruby.railstutorial.org/上的教程。它基本上是一个留言板应用程序,用户可以在其中发布消息,其他人可以留下回复。现在我正在创建Users
. 里面的UsersController
东西是这样的:
class UsersController < ApplicationController
def new
@user = User.new
end
def show
@user = User.find(params[:id])
end
def create
@user = User.new(params[:user])
if @user.save
flash[:success] = "Welcome to the Sample App!"
redirect_to @user
else
render 'new'
end
end
end
作者说以下几行是等价的。这对我来说很有意义:
@user = User.new(params[:user])
is equivalent to
@user = User.new(name: "Foo Bar", email: "foo@invalid",
password: "foo", password_confirmation: "bar")
redirect_to @user
重定向到show.html.erb
. 这究竟是如何工作的?它怎么知道去show.html.erb
?