Einfachste Möglichkeit zum Kopieren / Klonen einer Mungo-Dokumenteninstanz?

8

Mein Ansatz wäre, die Dokumenteninstanz zu erhalten und aus den Instanzfeldern eine neue zu erstellen. Ich bin mir sicher, dass es einen besseren Weg dafür gibt.

    
fusio 19.08.2013, 23:50
quelle

4 Antworten

7

Können Sie klarstellen, was Sie mit "kopieren / klonen" meinen? Versuchen Sie, ein doppeltes Dokument in der Datenbank zu erstellen? Oder versuchen Sie nur, zwei var s in Ihrem Programm zu haben, die doppelte Daten haben?

Wenn Sie nur tun:

%Vor%

In diesem Fall sind x und y zwei Kopien desselben Dokuments in Ihrem Programm.

Alternativ, wenn Sie eine neue Kopie des Dokuments in die Datenbank einfügen wollten (allerdings mit einem anderen _id , nehme ich an), würde das so aussehen:

%Vor%

Oder wenn Sie dies von Anfang an tun, aka haben Sie ein Dokument d1 erstellt, können Sie einfach save zweimal aufrufen, ohne _id :

zu setzen %Vor%

Es werden jetzt zwei Dokumente mit unterschiedlichen _id und alle anderen Felder in Ihrer Datenbank identisch sein.

Klärt das die Dinge ein bisschen?

    
Amalia 19.09.2013, 14:41
quelle
48

Der folgende Code zum Klonen von Dokumenten in Amelias Antwort oben funktioniert nicht :

%Vor%
  

Sie müssen d1.isNew = true; auch wie folgt zurücksetzen:

%Vor%     
jlchereau 15.09.2014 10:09
quelle
0

Der folgende Code zum Klonen von Dokumenten:

%Vor%     
Asad Fida 02.04.2015 05:48
quelle
0

Verwenden Sie einfach den Klon:

%Vor%     
Espinasse 26.06.2017 09:09
quelle