2014-04-17 4 views
0

{_id : ObjectId(...), name : "name", ids : [44, 1, 9, 11, 15, 66]}

Comment supprimer, par exemple, sous forme 15ids ??? Est-il possible d'utiliser $pullhttp://docs.mongodb.org/manual/reference/operator/update/pull/?

Phalcon docs http://docs.phalconphp.com/en/latest/reference/odm.html#creating-updating-records

+0

Je ne sais pas vraiment parce que je n'utilise pas. Mais il semble qu'il existe une méthode ['getConnection()'] (http://docs.phalconphp.com/en/latest/api/Phalcon_Mvc_Collection.html) lorsque vous explorez la documentation de l'interface de collection. Cela semble obtenir la connexion du pilote sous-jacent à partir de l'interface d'injection de dépendances. Une fois que vous avez la connexion de pilote standard, vous devriez être en mesure d'utiliser toutes les méthodes supportées [ici] (http://www.php.net/manual/fr/class.mongodb.php) –

Répondre

0

De l'manual:

Votre collection:

{_id : ObjectId(...), name : "name", ids : [44, 1, 9, 11, 15, 66]} 

Vous pouvez supprimer, tableau "15" de ce qui précède "ids" avec une simple mise à jour:

db.yourcollection.update(
       { ids: "15" }, 
       { $pull: { ids: "15" } }, 
       { multi: true } 
      ) 

La mise à jour se compose de

  • {ids: "15"}: Trouvez tous ces éléments dans votre tableau d'ids.
  • {$ pull: {ids: "15"}}: "L'opérateur $ pull supprime toutes les instances d'une ou de plusieurs valeurs correspondant à une requête spécifiée" - dans ce cas, 15
  • {multi: true}: Multi-indicateur simple pour supprimer plusieurs occurrences trouvées.

Espérons que ça aide.