私は在庫システムを作ろうとしています。私のテーブルは、デフォルトで主キーとしてインデックス "id"を持っています。私の在庫番号は、テーブルに新しいエントリを作成するための一意の値でなければなりません。在庫がすでに存在する場合は、属性を更新します。どのようにこれを行うのですか?インベントリ番号をプライマリキーとすることで?既に存在する在庫を確認して更新する手段がありますか?Ruby Rails - save vs updateどこのメソッド
1
A
答えて
0
は、これが働いた:create_or_update method in rails
my_class = ClassName.find_or_initialize_by_name(name)
my_class.update_attributes({:street_address => self.street_address,.....})
2
固有のフィールドnumber
(たとえば)を使用できます。あなたより汚い方法find_or_create_by_<field_name>
を使用することができます。
@ticket = Ticket.find_or_create_by_number(503)
更新日:
@ticket.attrib = 'new attribute value'
@ticket.save
または
@ticket.update_attribute :attrib, 'new attribute value'
関連する問題
- 1. サブソニック3 .Save()VS .Update()と.Add()
- 2. "rvm rubygems current" vs "rvm update --system" vs "gem update rubygems-update"
- 3. Rails 3:Chaining Saveメソッド
- 4. Ruby on rails live update
- 5. Node.JS(Ruby対Javaスクリプト)vs Ruby On Rails
- 6. 未定義のメソッドupdate for nil:NilClass rails 4.0.0
- 7. 未定義のメソッド 'save' for nil Rails
- 8. Rails 3(Ruby 1.9.2 vs 1.8.6)と(MRI vs REE vs JVM) - コメント/提案?
- 9. mongoose save vs insert vs create
- 10. Ruby#indexメソッドVSバイナリ検索
- 11. Ruby/Railsパフォーマンス:OpenURI vs NET:HTTP vs Curb vs Rest-Client
- 12. Ruby Docs Update Error
- 13. Rails 3とpaperclip on updateメソッドの問題
- 14. Ruby on RailsのLoggerメソッド
- 15. Ruby on Rails、メソッドの作成
- 16. Ruby on Rails - 未定義のメソッド - Rails 3.2.13
- 17. Ruby on Rails、json vs js ajaxレスポンス
- 18. ruby on railsのメソッド上の条件 - ruby on rails 2
- 19. Ruby vs JRuby:Time.new
- 20. Rails has_many from save fail
- 21. Django constance - saveメソッド
- 22. Ruby/Rails - どこからメソッドが含まれていたのですか?
- 23. Unity3d onSomeEvent()vs update()performance
- 24. Ruby Enterprize Edition vs Ruby 1.9.2メモリの改善
- 25. Ruby Rails:ReviewControllerのNoMethodError#update
- 26. Ruby On Rails;未定義のメソッド `コメント
- 27. 未定義のメソッドlogged_in? Ruby on Rails
- 28. Ruby on Railsの呼び出しメソッド
- 29. ruby include vs extend
- 30. kendo.data.DataSource.hasChanges()メソッドsave after true
ありがとうck3g!このメソッドは既存のレコードも更新しますか? –
チケットが既に存在する場合は、このメソッドを取得してください。存在しない場合は作成します。その後、update_attribute、saveなどを使用できます。 – ck3g