Empfehlungen: Erweiterte Suche

hasMany through Relation

Datenbankobjekte strukturieren und validieren

hasMany through Relation

Beitragvon Mathias » Mo 17. Okt 2011, 21:32

Hintergrund ist folgende Applikation:
Die Website stellt dem Benutzer die Funktion des Verwaltens von Promotern, Einsätzen und Markenzugehörigkeit zur Verfügung.

Ein Promoter besitzt ein Profil (Model User). Der Promoter kann für bestimmte Marken (Model Brand) arbeiten. Die Verbindung kann eine berechtigte Person herstellen (bestimmte Rolle wie z.B. admin). Also wäre hier eine HABTM zwischen User und Brand ganz angebracht. In dieser Relation wollte ich erst nur die zusätzliche Info speichern, ob der Promoter dazu eine Benachrichtigung (über neue Events mit der Marke) möchte. Sollte die Relation gelöscht werden, wäre damit die Information auch weg. Was nicht so dramatisch wäre, weil bei neuer Relation man standardmäßig die Benachrichtigung wieder auf 1 setzen könnte.

Beim Durchstöbern des Books bin ich auf HasMany through aufmerksam geworden. Das klingt ganz interessant, da man so auch noch gleich die Anzahl der Einsätze und andere Informationen für die Relation (bestimmter Promoter zu bestimmter Marke) speichern könnte.

Was ich leider nicht ganz verstehe, ist die Zuordnung, wenn mal die Relation gelöscht worden ist. Zum Beispiel soll der bestimmte Promoter nicht mehr mit der Marke arbeiten. Aber vielleicht entscheidet man sich doch nach einem halben Jahr wieder, den Promoter mit der Marke arbeiten zu lassen. Die Informationen müssten ja in der JoinTable noch vorhanden sein.

Die einzige Idee, die mir gerade in den Sinn kommt, ist ein weiteres Feld in der JoinTable mit einem Wert zu belegen, die da angibt, ob die Relation gerade genutzt wird oder nicht. Falls der Promoter nicht mehr arbeiten sollte, wird die auf 0 gesetzt. Arbeitet er wieder, dann 1. Also besteht die Relation immer.

Das ist aber nicht ganz so gut, da man über einen längeren Zeitraum dann Relationen hat, die vielleicht gar nicht mehr genutzt werden und die Datenbank ein wenig aufblähen.

Vielleicht kann ja jemand etwas Licht ins Dunkle bringen.
cheers
Benutzeravatar
Mathias
 
Beiträge: 225
Registriert: Mi 4. Jun 2008, 22:30
Wohnort: Berlin
CakePHP-Version: 1.3.x
OS: OS X 10.6.x

Re: hasMany through Relation

Beitragvon Mathias » Mi 19. Okt 2011, 23:44

Nevermind.

Ich nutze jetzt so oder so die hasMany Through-Relation, um diverse Informationen zu speichern. Soweit ist das ganz interessant. Zumal mit dem Containable-Behavior schöne Abfragen machen kann.
cheers
Benutzeravatar
Mathias
 
Beiträge: 225
Registriert: Mi 4. Jun 2008, 22:30
Wohnort: Berlin
CakePHP-Version: 1.3.x
OS: OS X 10.6.x


Zurück zu Models

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast