newでオブジェクトを作成し,saveで保存する。saveするまでは,何も変更されない。
ruby
1user = User.new(name: 'Alice', age: 20)
2user.persisted? # => false 保存されてない
3user.save # この行がないと,Alice,20歳というユーザーのデータベースに記録されません。
4user.persisted? # => true 保存されている
createはnewと同時にsaveを実行する。
ruby
1user = User.create(name: 'Barbie', age: 21)
2user.persisted? # => true 保存されてる。
saveの行がなくてもBarbie,21歳というユーザーがデータベースに記録されてる。
あとは好みですが,以上の仕組みを前提とすると,一旦newでオブジェクトを作成し,いろいろな作業の結果新しいオブジェクトを破棄したい場合は,saveしなければ,それで終了になります。
他方,createでオブジェクトを作成した場合に,破棄しするときは,destroyしなければ,ユーザーとしては記録されたままになります。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。