Zum Datenbank-Design verwendet ich mitlerweile
MySQL Workbench (
herunterladen). Wenn du damit erst einmal umgehen kannst erleichtert es dir die Arbeit mit CakePHP dermaßen. Es gibt einige Feinheiten die man dabei beachten sollte. Vorrausgesetzt du nutzt MySQL als Datenbank.
Einmal sollte man auf das Datenbank-Schema achten und auch auf die Datenbank Engine, dort verwende ich ausschließlich die Standard-Werte, sodas die Standards der verwendeten Datenbank verwendet werden.
Dann muss man aufpassen das man die Beziehungs-IDs für
belongsTo unbenennt. MySQL Workbench vergibt die Beziehungs-IDs in der Mehrzahl, CakePHP nutzt aber die Einzahl, also wird aus
users_id =>
user_id.
Dann benennt MySQL Workbench bei
hasMany die Beziehungstabellen bspw. wie folgt: artists_has_albums, daraus wird dann für CakePHP albums_artists, in der alphabetischer Reihenfolge, also nicht artists_albums.
Wenn man diese Kleinigkeiten beachtet hat man ziemlich schnell eine Datenbank wo die Beziehungen recht gut stimmen. Den SQL-Code braucht man nur noch kopieren/explortieren und in die Datenbank einpflegen, also nicht von Hand schreiben. Mit der Cake-Console kann man dann ohne große Probleme das MVC backen und die Beziehungen stimmen dann auch schon. Bis ich da richtig drin war hab ich eine Weile gebraucht aber es klappt mitlerweile einwandfrei.
Ich stoße aber auch mal auf ein paar Extravagante Sachen die ich dann doch irgendwie per Hand lösen muss. Also perfekt ist nichts.
Dies nur als Tipp.