5

mongo ドキュメントから部分配列要素を削除しようとしています。私のドキュメント(レコード)は次のようなものです:

{
    "_id" : 1,
    ...,
    "team" : {
        "players" : [{
            "name" : "A B",
            "birthday" : new Date("11/11/1995")
          }, {
            "name" : "A C",
            "birthday" : new Date("4/4/1991")
          }],
        "matches" : [{
            "against" : "Team B",
            "matchDay" : new Date("11/16/2012 10:00:00")
          }]
      }
}

ここで、ドキュメントから「A B」プレーヤーを削除したいと考えています。私はこれを試しました:

$result = $collection->update(
    array('_id' => 1), 
    array('$pull' => array('team.players.name' => 'A B'))
);

結果はOKのようです

(
    [updatedExisting] => 1
    [n] => 1
    [connectionId] => 8
    [err] => 
    [ok] => 1
)

しかし、プレーヤーはまだドキュメントに存在します。

ありがとう!

4

1 に答える 1