2017-12-15 5 views
0

Ich benutze ein Nachrichten-Plugin von Autumn. https://github.com/gpasztor87/oc-messages-plugin Es hat 3 Modelle (Nachricht, Thread und Teilnehmer) und jetzt möchte ich einen separaten Abschnitt für dieses Plugin im Backend erstellen. Ich erstellte ein Plugin mit Builder, ich machte ein neues Modell namens "Nachricht", jetzt ist die Sache, dass, wenn ich einen Nachrichteneintrag lösche, ich es andere Tabelleneinträge löschen muss, die dieser Nachricht zugeordnet sind. Datenbank ist ähnlich wie: Thread hat viele Nachrichten und viele Teilnehmer.October CMS plugin models relations

Die Frage ist: soll ich alle 3 separaten Modelle in meinem neuen Backend-Plugin erstellen oder sollte ich die bereits erstellten aus dem Original-Plugin verwenden? Ist es auch besser, eine Beziehung mit October CMS zu erstellen, oder ich könnte eine Funktion onDelete() erstellen und alle zugehörigen Einträge löschen? Wenn ja, wie könnte ich diese Funktion übernehmen? Gibt es etwas wie onDelete Hook oder etwas?

Vielen Dank.

Antwort

0

konnte ich dieses Problem zu lösen, indem sie alle drei Modelle in meinem neuen Plugin erstellen und nur die Beziehungen zu jedem einzelnen von ihnen wie folgt ergänzt:

public $hasMany = [ 
    'messages' => [ 
     'Autumn\Messages\Models\Message', 
     'delete' => true 
    ], 
    'participants' => [ 
     'Autumn\Messages\Models\Participant', 
     'delete' => true 
    ] 
]; 
Verwandte Themen