從guide學習導軌,但在new
中有空物品實例的原因是什麼?當你去新的時候,它只是爲你呈現一個表格,然後當你提交時,它會使用create
行動中的新實例創建它。如果有錯誤,它將該實例返回到新視圖(表單)是否正確?在文檔,它說以下:在Rails的新方法中創建實例的目的是什麼?
爲什麼我們在 ArticlesController添加@article = Article.new的原因是,否則@article是零我們 觀點,並呼籲@ article.errors。任何?會拋出一個錯誤。
但是爲什麼@article
是nil
如果您已經通過create
操作創建一個實例?爲什麼新操作需要創建另一個有錯誤的實例?是不是由create
創建的實例與錯誤將在新的渲染?
//控制器
def new
@article = Article.new
end
def create
@article = Article.new(article_params)
if @article.save
redirect_to @article
else
render 'new'
end
end
private
def article_params
params.require(:article).permit(:title, :text)
end
因此,文章何時無法保存,新文件如何呈現,錯誤如何從新文件進入@article? – stackjlei
如果'@ article.save'返回'false',那麼'new.html.erb'模板會用已定義的'@ article'實例呈現。即'create'方法中的'render'new''不運行'new'方法。它只是使用它的html模板來呈現頁面 –
,那麼當新的'@ article'用在新的?當你第一次訪問該頁面查看錶單? 「@文章」的目的是什麼 – stackjlei