Das Kopieren von Datensätzen ist im Doctrine\Manager\CopyManager geregelt. Es stehen unterschiedliche Methoden zur Verfügung, um das Kopieren zu ermöglichen (siehe nachfolgende Überschicht).
Hinweis
Alle Methoden erlauben das Kopieren vieler Datensätze in einem Aufruf.
Methode | Beschreibung |
---|---|
root | Es wird der Stammdatensatz kopiert. Sprachen werden nicht kopiert. |
default | Es wird der Stammdatensatz mit Sprachen kopiert. |
withRelation | Wie default , der Stammdatensatz wird aber zusätzlich zu Eltern- und Kindern verknüpft, zu denen der Ursprungsdatensatz auch verknüpft ist. |
recursive | Wie default , jedoch werden hier alle Kinder und Kindeskinder ebenfalls kopiert. Es wird die vollständige Rekursionskette kopiert. |
Aufruf
use Brandbox\Framework\Brandbox\Doctrine; $ids = [1,2,3,4,5]; $entities = [$repository => $ids] $logger = $this ->staticController(Doctrine\Manager\CopyManager::class) ->root($entities) ; $logger = $this ->staticController(Doctrine\Manager\CopyManager::class) ->default($entities) ; $logger = $this ->staticController(Doctrine\Manager\CopyManager::class) ->withRelation($entities) ; $logger = $this ->staticController(Doctrine\Manager\CopyManager::class) ->recursive($entities) ;