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

Tidak dapat meneruskan nilai parameter ke dalam repositori findOneBy Symfony

Dalam contoh kode terakhir Anda, apakah jenis $user variabel? Saya berasumsi itu mungkin string jika itu adalah parameter perutean dan berasal dari URI. Anda dapat menggunakan var_dump() untuk mendapatkan jenis dan nilai dalam satu kesempatan.

Berdasarkan komentar sebelumnya, Anda mengatakan bahwa dokumen Skrip memiliki bidang berikut:

  • _id
  • nama (string)
  • deskripsi (string)
  • indeks (bilangan bulat)
  • id_pengguna (bilangan bulat)

Jika index bidang dalam dokumen MongoDB Anda adalah bilangan bulat, Anda harus menggunakan bilangan bulat dalam kueri. Misalnya, findOneByIndex('1') tidak akan cocok dengan dokumen dengan bilangan bulat 1 di bidangnya. Praktik terbaik di sini adalah melemparkan nilai Anda ke tipe yang sesuai sebelum melakukan kueri. Mungkin juga lebih baik untuk berhenti mengandalkan metode DocumentRepository ajaib dan secara eksplisit mendefinisikan findBy Anda sendiri metode, yang melakukan casting secara internal. Kemudian, pengontrol Anda dapat meneruskan string numerik langsung dari perutean atau parameter permintaan dan tidak perlu khawatir melakukan cast integer sendiri.

Juga, untuk mengomentari contoh kode asli Anda:

$script = $repository->findOneByIndex($user);

Ini untuk pola perutean platform/designing/users/{user}/showuser . Anda mengatakan bahwa ini gagal untuk menemukan hasil. Saya menganggap $user argumen ke pengontrol Anda adalah ID pengguna. Jika demikian, mengapa Anda menanyakan index bidang alih-alih user_id ?



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Streaming hasil operasi agregat menggunakan spring-data-mongodb

  2. Bagaimana cara menemukan mongodb ke item terakhir dari sebuah array?

  3. Golang/mgo:Bagaimana saya bisa meminta MongoDB untuk menggunakan waktu saat ini di suatu bidang?

  4. Dapatkan dokumen terakhir dengan kriteria berbeda

  5. Kueri Persimpangan Array Bersarang MongoDB