replset replicated replicar replica example create allow mongodb find notin

replicated - mongodb $ no_id



replicated to allow failover in mongodb (2)

Debe hacer $ne (no igual) para asegurarse de que la mascota actual que está viendo quede excluida de la búsqueda por parte del propietario.

Ejemplo en el caparazón de mongo :

var viewingPetId = ObjectId("515535b6760fe8735f5f6899"); var ownerId = ObjectId("515535ba760fe8735f5f689a"); db.mypet.find( { _id: { $ne: viewingPetId }, owner: ownerId } )

Necesito ausentarme para buscar pero no incluir un _id que ya está en la pantalla frente al usuario

por ejemplo, tengo 3 perfiles de mascota uno que el usuario ya está viendo

En esa página tengo un encabezado llamado Mi Familia. Luego ejecuto esta búsqueda

public function fetch_family($owner) { $collection = static::db()->mypet; $cursor = $collection->find(array(''owner'' => new MongoId($owner))); if ($cursor->count() > 0) { $family = array(); // iterate through the results while( $cursor->hasNext() ) { $family[] = ($cursor->getNext()); } return $family; } }

y devuelve todas las mascotas de mi familia aun sabiendo que ya estoy mostrando una. Así que quiero excluir ese _id de la búsqueda podría ayudar a alguien aquí.

Pensé algo como esto.

$cursor = $collection->find(array(''owner'' => new MongoId($owner), ''$not''=>array(''_id''=>new MongoId(INSERT ID HERE))));

sin embargo, eso solo impide que todo se ejecute


Use $ne como (note que no es necesario usar ObjectId() , la cadena se transferirá automáticamente a ObjectId ):

db.organizations.find({"_id" : {$ne:"563c50e05cdb2be30391e873"}})