|
Inhalt |
5 |
|
|
Vorwort |
9 |
|
|
Einleitung |
11 |
|
|
Kapitel 1: CakePHP kennenlernen |
21 |
|
|
Was ist ein Framework? |
22 |
|
|
Grundprinzipien des CakePHP-Frameworks |
23 |
|
|
Das Model-View-Controller-Pattern |
26 |
|
|
Das Zusammenspiel der CakePHP-Komponenten |
29 |
|
|
CakePHP-Entwicklung Schritt für Schritt |
31 |
|
|
CakeJobs - die Beispielanwendung |
33 |
|
|
Kapitel 2: Installation und Konfiguration |
37 |
|
|
Installation des Webservers |
37 |
|
|
Installation von CakePHP |
44 |
|
|
Installation der CakePHP-Konsole |
49 |
|
|
Kapitel 3: Schnell zum Erfolg - Ihre erste Webapplikation mit CakePHP |
53 |
|
|
Die Datenbank als Grundlage der Applikation |
53 |
|
|
Die Anwendung starten und Gerüste bauen |
56 |
|
|
Kapitel 4: Der Controller |
63 |
|
|
Aufbau des Controllers |
63 |
|
|
Attribute und Methoden im Controller |
75 |
|
|
CakePHP-Konventionen |
80 |
|
|
Kapitel 5: Das Model |
83 |
|
|
Was ist ein Model? |
83 |
|
|
Validierung im Model |
85 |
|
|
Ein zweites Model einbinden |
91 |
|
|
Model-Relationen herstellen |
93 |
|
|
Retrieve: Daten finden |
97 |
|
|
Create und Update: Daten speichern |
103 |
|
|
Delete: Daten löschen |
106 |
|
|
Model-Methoden und -Attribute |
107 |
|
|
Kapitel 6: Das View |
113 |
|
|
Was ist ein View? |
113 |
|
|
Die Template-Engine in CakePHP |
114 |
|
|
Nützliche Helfer im View: Die Helper-Klassen |
130 |
|
|
Die Mini-Views: Elements |
143 |
|
|
Kapitel 7: Helper - Lassen Sie CakePHP für sich arbeiten |
147 |
|
|
Die Standard-Helper von CakePHP |
148 |
|
|
Der HTML-Helper |
149 |
|
|
Der Text-Helper |
161 |
|
|
Der Time-Helper |
164 |
|
|
Der Number-Helper |
168 |
|
|
Der Cache-Helper |
171 |
|
|
Der Paginator-Helper |
175 |
|
|
JavaScript und CakePHP |
185 |
|
|
Eigene Helper entwickeln |
188 |
|
|
Kapitel 8: Session-Handling mit CakePHP |
191 |
|
|
Session-Konfiguration |
191 |
|
|
Die Session-Component verwenden |
193 |
|
|
Der Session-Helper |
196 |
|
|
Beispiel: Ein Merkzettel für Jobanzeigen |
200 |
|
|
Kekse zum Kuchen - Der Einsatz von Cookies |
203 |
|
|
Kapitel 9: Die CakePHP-Konsole und die Bake-Shell |
209 |
|
|
Shells starten |
210 |
|
|
Die Console-Shell kennenlernen |
211 |
|
|
Baking: Code automatisch generieren |
212 |
|
|
Eigene Shells programmieren |
226 |
|
|
Kapitel 10: Der Controller reloaded - Callbacks, Routes & Co. |
233 |
|
|
Die Controller-Funktionalität erweitern |
233 |
|
|
Controller-Callbacks |
235 |
|
|
URLs und Routes |
236 |
|
|
Statische Seiten in CakePHP |
241 |
|
|
Kapitel 11: Components verwenden |
243 |
|
|
Die Core-Components von CakePHP |
244 |
|
|
Die Email-Component |
247 |
|
|
Components selbst entwickeln |
256 |
|
|
Kapitel 12: Das Model reloaded - Bindings, Behaviors & Co. |
261 |
|
|
HABTM - hasAndBelongsToMany-Associations |
261 |
|
|
Model-Bindings |
268 |
|
|
Model-Callbacks |
269 |
|
|
Die AppModel-Klasse |
272 |
|
|
Models durch Behaviors erweitern |
273 |
|
|
Kapitel 13: Ajax und DHTML mit CakePHP |
279 |
|
|
Der Js-Helper |
280 |
|
|
JQuery, Mootools oder Prototype |
281 |
|
|
Den JS-Helper einsetzen |
282 |
|
|
Kapitel 14: Sicherheit, Authentifizierung und Autorisierung |
303 |
|
|
Zugriffsschutz mit der Security-Component |
303 |
|
|
Authentifizierung mit der Auth-Component |
310 |
|
|
Autorisierung mit der Auth-Component |
316 |
|
|
ACL - Access Control Lists |
320 |
|
|
Kapitel 15: Lokalisierung und Internationalisierung |
337 |
|
|
Grundlagen |
337 |
|
|
Mehrsprachigkeit einrichten |
340 |
|
|
Dynamische Daten internationalisieren |
348 |
|
|
Die Klasse i18n einsetzen |
354 |
|
|
Kapitel 16: Testing |
359 |
|
|
Die Test-Suite installieren |
361 |
|
|
Tests schreiben |
362 |
|
|
Tests zusammenfassen |
374 |
|
|
Browsersimulation mit Web Testing |
375 |
|
|
Kapitel 17: Weitere Kernfunktionalitäten von CakePHP |
379 |
|
|
Plugins erstellen und einbinden |
379 |
|
|
Fehlerbehandlung in CakePHP |
381 |
|
|
Ein eigener ErrorHandler |
384 |
|
|
Debugging in CakePHP |
385 |
|
|
Die CakePHP-Core-Klassen |
386 |
|
|
Kapitel 18: Tipps und Tricks |
397 |
|
|
RSS-Feeds erstellen |
397 |
|
|
Routes dynamisch aus der Datenbank generieren |
399 |
|
|
Zugriff auf die Datenbank ohne Model |
400 |
|
|
Index |
403 |
|