0

Ruby on Railsでレコードを更新する適切な方法は何ですか?たった1つのレコード。たとえば、タイトルの名前をなんとか変更したいと思います。コードスニペットは素晴らしいでしょう!

4

2 に答える 2

2

レコードを更新する基本的な方法は次のようなものです。

@user.name = "new name"
@user.save

これは、フィールドを持つクラス@userのインスタンスであると想定しています。Username

update_attributesメソッドを使用してmass_assignmentを実行することもできます

@user.update_attributes name: "new name", email: "new_email@foo.com"

レコードが無効な場合に例外を発生させたい場合は、代わりにbangメソッドを使用できるため、ここではsave!&になります。update_attributes!

update_attribute名前が変更された(または間もなく変更される)を使用update_columnして、検証をスキップしながら単一の列を更新することもできますが、通常、この方法の使用は避けてください。

そこにもっとドキュメント

最後に、 write_attributeメソッドを使用できます

于 2012-10-28T23:30:22.217 に答える
0
entity = Entity.find_by_name("some_name")
entity.title="new title"
entity.save!

また

Entity.find_by_name("some_name").update_attributes(:title => "new title")

詳細については、 http: //guides.rubyonrails.orgを参照してください。

于 2012-10-28T23:29:50.043 に答える