sql >> Databáze >  >> NoSQL >> MongoDB

Jak aktualizovat vložený dokument v MongoDB pomocí Doctrine ODM

Pokud chcete použít queryBuilder, použijte toto

$dm->createQueryBuilder('Page')
    ->update()
    ->field('page.pageComment')->set( <$newupdatePageCommentObj> )
    ->field('id')->equals('<matchedId>')
    ->getQuery()
    ->execute();

Nebo Když vygenerujete settery a gettery pro členskou proměnnou EmbedMany, vygeneruje se funkce přidání a odebrání členských funkcí uvnitř vaší třídy. takže ve vašem případě to budou členské funkce:

public function addPageComment(type_hint_with_your_pageComment_document $pageComment )
{
    $this->pageComment[] = $pageComment;
}
public function removePageComment( type_hint_with_your_pageComment_document $pageComment )
{
    $this->items->removeElement( $pageComment );
}

Můžete tedy použít funkci addPageComment(), která ji přidá, pokud neexistuje, a aktualizuje ji, pokud již existuje.



  1. Jak provést dotaz pomocí tečky (.) přes Mongoose v Node.js a jak přidat prázdné pole

  2. Jak implementovat Redis v CodeIgniter?

  3. Seskupit podle dne s více datovými poli

  4. MongoDB - Chyba:příkaz getMore selhal:Kurzor nenalezen