MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Mongodb/Mongoid - apa artinya {:multi => true}

Dokumentasi untuk metode pembaruan MongoDB menyatakan sebagai berikut:

Jadi pada dasarnya multi parameter inilah yang mengaktifkan update_all perilaku dalam pertanyaan yang Anda tautkan.

Untuk menjawab pertanyaan kedua Anda:ya - Mongoid memiliki fitur ini di dalamnya sekarang. Referensi dokumentasi di sini . Tapi Anda bisa menggunakannya seperti ini:

User.where(:gender => "Male").update_all(:title => "Mr")

Perbarui

Dalam kasus di mana Anda ingin mendorong nilai ke bidang array, Anda masih perlu menggunakan perpustakaan MongoDB secara langsung, karena update_all Mongoid metode hanya mendukung $set metode pembaruan basis data (yang dapat digunakan untuk memperbarui seluruh larik, tetapi tidak mendorong nilai ke dalamnya).

Contoh dalam jawaban atas pertanyaan yang Anda tautkan akan berfungsi, saya telah menyalinnya di bawah mereka yang menemukan pertanyaan ini (terima kasih shingara !):

User.collection.update( 
  {'$in' => {:gender => 'Male'}}, 
  {'$push' => {:titles => 'Mr'}},
  {:multi => true}
)


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. NodeJS + Mongo asli - periksa apakah koleksi ada sebelum permintaan

  2. MongoDB $concatArrays

  3. MongoDB sebagai layanan antrian?

  4. Bagaimana cara mengimplementasikan has_many :melalui hubungan dengan Mongoid dan mongodb?

  5. Memproyeksikan ke tipe lain menggunakan C# SDK