当我使用一个支架来生成一个Foo模型/控制器,我的控制器具有默认创建的行动,将render :new
如果@foo.save
返回false。渲染如何处理实例变量?
会发生什么事我@foo对象时,我render :new
?
我的股票new.html.erb视图是指@foo.errors
,这让我觉得它重用从我的创建行动@foo(而不是在新的方法重新创建@foo = Foo.new
一个新的对象)。这不是这种情况吗?
我很担心这个,因为我想在一个新的命名空间控制器中重用这个约定(其他所有东西都是平等的),但是当render :new
发生时,我会得到nil为@foo。它似乎既不重复使用Foo对象,也不创建新对象。所以我试图更好地理解渲染。