Frage zu Datenbank-Verknüpfung mit CakePHP

60 views
Skip to first unread message

Ingo Just

unread,
Aug 19, 2012, 8:44:13 PM8/19/12
to cakep...@googlegroups.com

Hallo zusammen,

 

ich habe eine Frage zur Datenbank-Struktur für ein CakePHP-Projekt. Es gibt zwei Tabellen: User und Aufgaben. Jeder Nutzer kann mehrere Aufgaben haben und jede Aufgabe kann mehreren Nutzern zugeordnet sein. Das wäre ja eine klassische HABTM-Verknüpfung, wenn ich das richtig verstanden habe. Nun ist es aber so, dass ich den Initiator der Aufgabe noch speichern möchte. Das heißt die Aufgabe kann nur einen Initiator-Nutzer haben, aber ein Nutzer kann mehrere Aufgaben initiieren. Das wäre dann eine HasMany und BelongsTo Beziehung.

 

Nun die Frage: Lege ich eine HABTM-Association mit einer Join-Table an und zusätzlich lege ich noch eine HasMany-Beziehung mit der Spalte user_id in der Tabelle User an? Oder wie mache ich das genau?

 

Vielen Dank im Voraus!

Christoph Stickel

unread,
Aug 21, 2012, 7:12:39 AM8/21/12
to cakep...@googlegroups.com
Hallo,

ganz genau. Einfach beide Assoziationen definieren. Jede Assoziation
drückt ja nur eine Beziehung zwischen 2 Models aus. In dem Fall hast
du aber ja tatsächlich 2 verschiedene Beziehungen. Einmal den
Ersteller und einmal die zugewiesenen Benutzer.
Also User Habtm Tasks, User hasMany Tasks, Task Habtm Users und Task
belongsTo User
Dazu brauchst du dann das Feld Task.user_id und die Habtm Tabelle
users_tasks.user_id, users_tasks.task_id

Viele Grüße!
> --
> Bitte bei Fragen immer auch die aktuell verwendete cakePHP Version angeben und
> wenn möglich auch das verwendete Betriebssystem und die PHP Version. Danke.
> Sie erhalten diese Nachricht, weil Sie Mitglied sind von Google Groups-Gruppe "CakePHP-de für deutsche CakePHP Entwickler".
> Für das Erstellen von Beiträgen in dieser Gruppe senden Sie eine E-Mail
> an cakep...@googlegroups.com
> Um sich von dieser Gruppe abzumelden, senden Sie eine E-Mail an cakephp-de-...@googlegroups.com
> Weitere Optionen finden Sie in dieser Gruppe unter http://groups.google.com/group/cakephp-de?hl=de
Reply all
Reply to author
Forward
0 new messages