sql >> Base de Datos >  >> NoSQL >> MongoDB

Cómo consultar mongodb con la condición "me gusta" en Symfony2

En primer lugar, echemos un vistazo a MongoDB:la búsqueda con expresiones regulares se puede realizar definiendo una expresión regular, como se explica aquí :

db.users.find({"username": /^a/})

Lo mismo se puede hacer en php definiendo una expresión regular, explicó aquí :

$collection->find(array('name'=> array('$regex' => '^a'));

Puede usar casi exactamente la misma sintaxis de expresiones regulares con Doctrine MongoDB ODM:

$user = $this->get('doctrine.odm.mongodb.document_manager')
        ->getRepository('WishbotWebBundle:User')
        ->findByUsername(array('$regex' => $fname));

Tenga en cuenta que se devuelve una colección de documentos, incluso si solo se encuentra uno. La expresión regular anterior también coincide con todos los documentos donde el nombre de usuario contiene el $fname cadena en cualquier lugar.

Si desea nombres de usuario que comiencen con $fname , necesita usar '^' . $fname .