Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

...

Der CrudManager ermöglicht es Kopier- und Löschaktionen über eine Konfiguration zu steuern und zu reglementieren. Er setzt auf Brandbox/Doctrine auf und nutzt die folgenden Funktionen:

Die Verwendung des CrudManager ermöglicht dabei die Einschränkung von potenziell Ressourcenhungrigen Anfragen. Da Datensätze rekursiv kopiert/gelöscht werden können, ist es hier nun möglich die Rekursionspfade zu definieren und ggf. zu limitieren.

Methode

Beschreibung

copy

Die Methode ermöglich das Kopieren von Datensätzen, wie in Kopieren von Datensätzen beschrieben.

delete

Die Methode ermöglicht das Löschen von Datensätzen, wie in Löschen von Datensätzen beschrieben.

Definition per crud.json

Steht für ein Repository keine crud.json zur Verfügung, werden die Standard-Funktionen angeboten. 

...

Codeblock
languagejs
{
    "repositories": [
        {
            "repository": "MyRepository",
            "prohibited": [
                "CopyRoot",
                "CopyDefault",
                "CopyRelate",
                "CopyRecursive",
                "DeleteDefault",
                "DeleteRecursive"
            ],
            "multiple": false,
            "guidedActions": [
                {
                    "identifier": "myGuidedAction",
                    "label": {
                        "de": "Lorem Ipsum...",
                        "en": "Lorem Ipsum..."
                    },
                    "actions": [
                        "CopyRecursive",
                        "DeleteRecursive"
                    ],
                    "multiple": false,
                    "nodes": [
                        {
                            "repository": "MyRepository",
                            "nodes": [
                                {
                                    "repository": "MyChildRepository"
                                }
                            ],
                            "relateOnly": false,
                            "withTranslation": true
                         }
                    ]
                }
            ]
        }
    ]
}


Info

Hinweis

Wird das Flag relateOnly verwendet, wird die Rekursionskette ab diesem Punkt automatisch nicht fortgesetzt.

Beispiel

Codeblock
languagephp
use Brandbox\Framework\Brandbox\Crud;  

$ids = [1,2,3,4,5];
$entities = ['MyRepository' => $ids]  

$logger = $this
  ->staticController(Crud\CrudManager::class)
  ->copy($entities, 'myGuidedAction')
;

$logger = $this
  ->staticController(Crud\CrudManager::class)
  ->delete($entities, 'myGuidedAction')
;

Versionshinweise

title
Info

brandbox 8.0 (framework 1.29.0)

Das Package steht ab framwork 1.29.0 zur Verfügung

...