Okay.. habe gerade den neusten Trunk von CakePHP 1.2 ausgecheckt und als erstes fiel mir auf das der “scripts” Ordner verschwunden ist. Es gibt nun einen neuen Ordner unter “cake” namens “console”. Dieser beherbergt ein Shellskript und eine Batch-Datei für Windowsuser. Da bisher noch keine Doku existiert stand ich anfangs vor einem Problem: “Wie zum Geier soll die BAT funktionieren?”

In der Datei selbst gab es jedoch einen kleinen Hinweis, wenn auch mit Falschinformation gewürzt:

In order for this script to work as intended, the cake\scripts\ folder must be in your PATH

Scripts wurde ja entfernt. Müsste also “cake\console\” sein.

Console Ordner eurer PATH variable hinzufügen

Die globale PATH variable kennt man noch aus DOS Zeiten und ist unter XP auch recht gut versteckt.

  1. Rechte Maustaste auf das Arbeitsplatz-Symbol -> Eigenschaften
  2. Systemeigenschaften: Wählt dort “Erweitert”
  3. Erweitert: Unten ist ein Button “Umgebungsvariablen”. Klicken.
  4. Dort sind zwei Listenfelder. In dem unteren “Systemvariablen” Feld “Path” suchen
  5. Markiert “Path” und klickt auf den “Bearbeiten”-Button
  6. Wert der Variablen: Ist eine durch Semikolon getrennte Liste mit Pfaden
  7. Fügt nun den vollen Pfad zu eurem “cake” Ordner (wahrscheinlich irgendwo in htdocs)
  8. Beispiel: ;F:\xampp\php;F:\htdocs\cake\console;
  9. Bestätigen mit OK und fertig.

Hinweis 1: Ich habe neben cake\console auch xampp\php hinzugefügt, damit ich PHP von überall aufrufen kann.
Hinweis 2: Wenn ihr die “CMD” Konsole noch offen habt, müsst ihr die neu aufrufen, damit die geänderte PATH variable auch aktiv ist.

Neues Projekt anlegen

Es hat sich einiges geändert. Früher konnte man mit scripts\bake.php -project “name” ein neues Skelett anlegen lassen. In CakePHP existiert aber der “project” parameter nicht mehr, und man kann ihm auch nicht sagen wo es hingehen soll (soweit ich weiss..). Da man nun von überall backen kann, muss man einfach in den zukünfigten Projektordner wechseln!

  1. Prüft ob der neue Befehl “cake” funktioniert. Öffnet “cmd” und gebt einfach irgendwo “cake” ein, gefolgt von Enter.
  2. Ihr solltet “Welcome to CakePHP v1.2.0.5165alpha Console” sehen, gefolgt von ein paar Statusinfos.
  3. Geht nun in euren Ordner wo die cake-, app- und vendor-Ordner ebenfalls liegen. Erstellt einen neuen Ordner. Zum Beispiel “testprojekt”.
  4. Wechselt nun nach “testprojekt” und ruft “cake bake” auf, wobei “bake” nun ein Parameter ist und “cake” unsere Batch-Datei.
  5. Ihr solltet nun einen ähnlichen Dialog bekommen wie früher mit “bake.php -project ..”
    App : testprojekt
    Path: F:\htdocs\testprojekt
    ---------------------------------------------------------------
    Skel Directory: F:\htdocs\cake\console\libs\templates\skel
    Will be copied to:
    ---------------------------------------------------------------
    App: testprojekt
    Path: F:\htdocs\testprojekt
    ---------------------------------------------------------------
    Look okay? (y/n/q)
    
  6. Entscheidet ob der gefundene Pfad richtig ist und dann geht es gewohnt weiter :)

Ihr solltet nun die Willkommensseite sehen wenn ihr http://localhost/testprojekt aufruft. Angaben und Pfade varrieren selbstverständlich. Aber das dürfte ja klar sein.

Für weitere Tips und Tricks empfehle ich den Beitrag von Cakebaker zu den neuen Funktionen.

Viel Spass!