我想通過API創建一個對象,即不需要任何表單,我應該在做MyModel.new(:name => params[:name])
還是MyModel.create(:name => params[:name])
?ruby on rails,創建新對象,使用create還是new方法?
假設我有resources : my_models
在routes
我檢查,我看到的方法可以使用params哈希表確定。
我想通過API創建一個對象,即不需要任何表單,我應該在做MyModel.new(:name => params[:name])
還是MyModel.create(:name => params[:name])
?ruby on rails,創建新對象,使用create還是new方法?
假設我有resources : my_models
在routes
我檢查,我看到的方法可以使用params哈希表確定。
.new
生成一個實例(但您仍然需要.save
它)。
而
.create
使實例和保存在一個地方。
希望這有助於您決定使用哪一個。
這取決於你想得到什麼。 new
方法簡單地實例化新對象,並且create
方法創建一個對象並將其保存到數據庫(如果驗證通過)。
@MichaelDurrant,是的。我假設你在談論ActiveRecord:http://api.rubyonrails.org/classes/ActiveRecord/Base.html#method-c-create。 – Mischa
謝謝米莎+1 –
爲了格式和清晰度,我稍微更新了答案。 –
謝謝邁克爾,希望這可以幫助更多的人在未來:) – jamiethepiper