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

Modifikasi Tidak Langsung dari Overloaded Property Laravel MongoDB

Karena cara mengakses atribut model diimplementasikan di Eloquent, saat Anda mengakses $category->specifics , sebuah keajaiban __get() metode dipanggil yang mengembalikan salinan nilai atribut itu. Oleh karena itu, saat Anda menambahkan elemen ke salinan itu, Anda hanya mengubah salinannya, bukan nilai atribut aslinya. Itulah mengapa Anda mendapatkan pesan kesalahan yang mengatakan bahwa apa pun yang Anda lakukan, itu tidak akan berpengaruh apa pun.

Jika Anda ingin menambahkan elemen baru ke $category->specifics array, Anda perlu memastikan bahwa keajaiban __set() digunakan dengan mengakses atribut dengan cara setter, misalnya:

$category->specifics = array_merge($category->specifics, $this->request->get('specifics'));


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. java spring MappingJacksonJsonView tidak melakukan toString di mongodb ObjectId

  2. Mongo - kueri, Dokumen yang disematkan tidak cocok kecuali notasi titik

  3. Buat serial satu kelas dalam dua cara berbeda dengan Jackson

  4. Bagaimana cara mengubah semua elemen array dalam dokumen mongodb ke nilai tertentu?

  5. Batas waktu MongoDB hanya untuk proyek tertentu