CakePHP 1.3 mit MAMP auf dem Mac installieren


Webentwicklung mit CakePHP (Gebundene Ausgabe)

Von Dirk Ammelburger, Robert Scherer

Preis: EUR 34,90 EUR
Neu ab: EUR 34,90 Auf Lager
gebraucht ab: EUR 24,90 Auf Lager


CakePHP ist immer noch meine erste Wahl, wenn es um individuelle Entwicklung mit PHP geht. Kein anderes Framework macht mir so viel Spaß und lässt sich so schnell in Betrieb nehmen. Zur Unterrichtsbegleitung möchte ich die folgende Anleitung zur Installation von CakePHP 1.3 zur Verfügung stellen. Dabei geht es im zweiten Teil um die Einrichtung der Bake Shell, der Konsole, um mit CakePHP die Komponenten des MVC-Pattern zu “backen.

Voraussetzungen

  • funktionierende MAMP-Installation
  • Grundkenntnisse in der Benutzung des Terminals

Arbeitsschritte

  1. CakePHP herunterladen
    Das tut man am besten von der Website www.cakephp.org, die seit einiger Zeit zur Github-Präsenz des Projekts führt. Die aktuelle stabile Version war 1.3.10, als dieser Artikel entstand. Das Format (tar/zip) macht keinen Unterschied.
  2. Archiv entpacken und am besten umbenennen in cakephp oder ähnlich.
  3. Ordner an einen sinnvollen Ort im Betriebssystem schieben.
  4. Das Wurzelverzeichnis des MAMP auf den Ordner cakephp/app/webroot einstellen, Server neu starten
  5. Aufruf von http://localhost im Browser. Die Seite wird zwei PHP-Notices zeigen, das ist in diesem Moment normal und zeigt, dass bisher alles nach Plan gelaufen ist.CakePHP Startbildschirm
  6. Änderung der beiden Salt-Strings in der angegebenen Datei app/config/core.php.
  7. Aktualisierung der Seite im Browser. Nun sollten die beiden ersten gelben Kästen verschwunden sein.
  8. Konfiguration der Datenbankverbindung in app/config/database.php. Dazu wird die Datei app/config/database.php.default umbenannt, dann die Verbindungsdaten zum MySQL-Server im MAMP eingetragen. Es reicht, dies in dem Array default zu tun.
  9. Aktualisierung der Seite im Browser. Nun sollte alles grün sein.
    CakePHP nach der Konfiguration

Nun könnte das Programmieren losgehen. Das steht allerdings nicht im Mittelpunkt dieser Anleitung, sondern das Einrichten der Konsole von CakePHP zum Backen. Der Unterricht zeigt immer wieder, dass dies der schwierigere Teil ist.

Einrichtung der CakePHP-Konsole

Der CakePHP-Ordner enthält einen Unterordner cake/console, der wiederum die ausführbare Datei cake enthält. Diese ist sehr mächtig und ermöglicht das “Backen” von MVC-Komponenten mit wenig Aufwand. Um damit arbeiten zu können, müssen einige Einstellungen vorgenommen werden.

  1. Öffnen eines Terminals
  2. Eingabe des Befehls cd + ENTER, um in das Homeverzeichnis des Users zu wechseln.
  3. Navigation in den Ordner cake/console mithilfe von cd. Beispiel:
    cd /Applications/MAMP/htdocs/cakephp/cake/console
    Dabei kann von der TAB-Taste Gebrauch gemacht werden, um die Pfadkomponenten zu ergänzen.
  4. Eingabe von pwd, um das aktuelle Verzeichnis anzuzeigen.
    Ausgabe:  /Applications/MAMP/htdocs/cakephp/cake/console
  5. Kopieren des Pfades in die Zwischenablage
  6. Anlegen oder erweitern eines Benutzerprofils, um die cake-Datei in Zukunft direkt im Terminal ausführen zu können.
    Eingabe von cd, um in das Homeverzeichnis zu wechseln.
  7. Eingabe von vi .profile
    Dies öffnet einen Editor, der entweder gar nichts anzeigt – dann hat die Datei noch nicht existiert – oder einige Konfigurationen – dann muss die Datei ergänzt werden.
  8. Das Betriebssystem kennt eine Variable PATH, die alle Pfade beinhaltet, unter denen sich ausführbare Dateien befinden. Diese Variable muss um den Pfad zur Cake-Konsole erweitert werden.
    Eingabe von SHIFT + G, um ans Ende der Datei zu wechseln.
  9. Eingabe von i, um in den Einfügemodus zu gelangen.
  10. Eingabe von export PATH= gefolgt vom Inhalt der Zwischenablage.
    Ergebnis z.B.: export PATH=/Applications/MAMP/htdocs/cakephp/cake/console
    Nun muss dieser Eintrag noch ergänzt werden um den Inhalt der bisherigen Pfadvariablen.
    Ergebnis z.B.: export PATH=/Applications/MAMP/htdocs/cakephp/cake/console:$PATH
  11. Verlassen des Editors mit dem zweimaligen Drücken von ESC gefolgt von :wq und ENTER
  12. Einlesen des neuen Profils durch die Eingabe von source ./.profile + ENTER
  13. Jetzt ist die Konsole prinzipiell einsatzbereit. Dazu muss man sich immer im app-Verzeichnis des jeweiligen CakePHP-Installation befinden.
    Also: Wechsel mit cd in das app-Verzeichnis, z.B.: cd  /Applications/MAMP/htdocs/cakephp/app
  14. Eingabe z.B. von cake bake all + ENTER
  15. Die Eingabeaufforderung fragt nach der Datenbankkonfiguration default. Das kann mit ENTER bestätigt werden.
  16. Nun ist die Ziffer für das Model einzugeben, das gebacken werden soll.
  17. Die beiden folgenden Abfragen können mit ENTER bestätigt werden. Wenn alles glattgegangen ist, liegen jetzt Model, Views und Controller für die Tabelle in der Datenbank vor.

Es ist auf einigen Rechnern ein Socketfehler ab Schritt 14 aufgetreten. Dieser lässt sich in der Regel korrigieren, indem folgende Zeile in der app/config/database.php dem Array hinzugefügt wird (Die Zeile mit dem Schlüssel ‘port’).

class DATABASE_CONFIG {
 
	var $default = array(
		'driver' => 'mysql',
		'persistent' => false,
		'host' => 'localhost',
                'port' => '/Applications/MAMP/tmp/mysql/mysql.sock',
		'login' => 'root',
		'password' => 'root',
		'database' => 'my_database',
		'prefix' => '',
	);
}

Es kann sein, dass mit jeder neuen Version von CakePHP auch die Konsole geändert wird. Daher sollte der Pfad zur Konsole immer für die aktuelle CakePHP-Installation eingestellt werden. Dazu sind die Schritte 6 bis 12 mit dem jeweiligen Pfad zur Konsole zu wiederholen.
Das Buch “Webentwicklung mit CakePHP” von Dirk Ammelburger und Robert Scherer kann ich sehr empfehlen, weil es ein Beispiel mit vielen Facetten durchzieht, das einen einfachen Einstieg garantiert.

Post to Twitter

Veröffentlicht unter Entwicklung, Programmieren, Unterricht | Hinterlasse einen Kommentar

Hinterlasse eine Antwort