我到處搜索試圖找到解釋如何工作/它的目的是什麼,但我找不到任何有用的。 我正在做Michael Hartl的教程,我的問題主要是關於兩個操作:'新'和'創建'。 新的動作有以下幾點:Ruby on Rails中User.new的解釋? (從邁克爾哈特爾的教程)
def new
@user = User.new
end
,在對應於「新」行動的看法,有一個的form_for助手,用戶可以鍵入他們的屬性和點擊提交。正如所料,輔助性的form_for的開頭是這樣的: 的form_for(@user)
但是這裏是我難倒...在創建一個動作,有以下代碼:
def create
@user = User.new(user_params)
#user_params is a function we defined which simply returns the permitted params from the user.
「新」行動中@user = User.new
的目的是什麼? User.new甚至完成了什麼?我假設實例變量@user必須傳遞給表單,但在這種情況下,爲什麼我們必須在'create'中重新聲明@user isntance變量?在我們的「創建」操作中僅僅擁有@user = User.new(user_params)是不夠的嗎? User.new是否有必要使表單正常工作?
我主要是想弄清楚@user = User.new在我們的'new'動作及其相應的'new'視圖(帶有形式)中完成了什麼,以及爲什麼當我們創建'create '實際上是創建對象的動作。任何幫助都非常讚賞。謝謝大家一直盡力解釋。提前感謝任何回答此問題的人。
好吧......我想我現在明白了,至少比我在提問之前做得更好。 Rich,我必須感謝你的迴應。感謝您調整我的原始問題,我仍然在學習如何正確使用本網站。感謝您讓編程社區對新人感到歡迎。 – Parker
感謝您的友好的話!沒問題,一旦你意識到許多基礎知識,你會學得更快。當它開始受到傷害時,你不知道核心功能 –