Teil 2: Serie: PHP-Frameworks Teil 6 - Akelos
- Serie: PHP-Frameworks Teil 6 - Akelos
- Teil 2: Serie: PHP-Frameworks Teil 6 - Akelos
- Teil 3: Serie: PHP-Frameworks Teil 6 - Akelos
- Teil 4: Serie: PHP-Frameworks Teil 6 - Akelos
Die eigentliche Ausgabe erfolgt in der passenden View. Sie findet sich im Verzeichnis app/views/page und trägt den Namen index.tpl. Sie sehen hier, dass keine Konfiguration notwendig ist, dass der Controller die View verwendet. Nur die Namensgleichheit des Verzeichnisses mit dem Kontrollernamen und...
Die eigentliche Ausgabe erfolgt in der passenden View. Sie findet sich im Verzeichnis app/views/page und trägt den Namen index.tpl. Sie sehen hier, dass keine Konfiguration notwendig ist, dass der Controller die View verwendet. Nur die Namensgleichheit des Verzeichnisses mit dem Kontrollernamen und die Namensgleichheit der Datei mit der Aktion reichen, damit Akelos die View einsetzt.

Akelos setzt hier also stark auf Convention over Configuration. Die wichtigsten Konventionen finden Sie im Wiki (). Wir setzen gleich einige ein.
Datenstruktur
Für ein Anwendungsbeispiel erstellen wir die entsprechenden Tabellen in der beziehungsweise den Akelos-Datenbank(en). Dafür bietet Akelos eine recht elegante Lösung, die wir hier nutzen wollen: sogenannte Installer, zu finden in app/installers. Sie erstellen dort eine PHP-Datei mit den entsprechenden Tabellen und Feldern, die dann automatisch von Akelos erstellt werden:
<?php
class FrameworksInstaller extends
AkInstaller
{
function up_1(){
$this->createTable('frameworks',
'id,'.
'name,'.
'licence_id'
);
$this->createTable('licences',
'id,'.
'licence_name'
);
}
function down_1(){
$this->dropTables('frameworks','l
icences');
}
}
?>
Den Installer müssen Sie nun über die Kommandozeile ausführen. Dies gelingt mit dem einfachen Skript-Befehl migrate. Sie finden ihn wie auch alle anderen Skript-Befehle im Unterverzeichnis script. Und so sieht das Kommando aus:
migrate Frameworks install
Wenn Sie allerdings Windows verwenden, müssen Sie das Skript mit der php.exe direkt aufrufen. Das kann dann wie folgt aussehen. Dem Befehl migrate müssen Sie natürlich je nach Verzeichnis, in dem Sie sich befinden, noch die entsprechende Route ins script-Verzeichnis mitgeben.
C:\Programme\xampp\php\php.exe migrate Frameworks install
Damit werden die neuen Tabellen automatisch in der Datenbank der aktuell ausgewählten Umgebung - in diesem Fall development - angelegt. Der Automatismus versucht auch, den Feldtyp richtig zu wählen. Für exakte Steuerung können Sie die Namen allerdings auch um Länge und Typ ergänzen. Die Syntax entspricht dabei der von der von Akelos eingesetzten Datenbankabstraktion ADOdb ().
MVC
Um eine eigene Anzeige zu realisieren, benötigen Sie einen eigenen Controller. Sie können natürlich den Standard-Controller verwenden. Alternativ generieren Sie über die Kommandozeile einen neuen. Der entsprechende Befehl heißt generate.

Er dient zum Generieren von Model, Controller und auch dem eingebauten Scaffolding. Hier ein einfaches Beispiel:
generate controller ShowFrameworks index
Nach dem Befehl generate folgt controller für das Generieren eines Controllers, dann der Controllername. Die Konvention ist Camel-Case für den Klassennamen. Die Dateinamen werden in Kleinbuchstaben mit Unterstrich angelegt.
Anschließend folgen die Views für den Controller. Die Standard-View, die wir hier anlegen, heißt immer index. Natürlich können Sie jederzeit auch manuell Views anlegen. Diese sind Methoden in der Controller-Klasse und zusätzlich in app/views als .tpl-Datei hinterlegt.
Den Controller rufen Sie nun über das Verzeichnis show_frameworks auf. Bei einer lokalen Installation kann die Adresse so aussehen: https://localhost/akelos/show_ frameworks/.
Angezeigt wird nun, wo sich die Standard-View befindet. Wollten Sie eine andere View aufrufen, wäre diese ebenfalls ein Unterverzeichnis. Sie können diesen Controller auch zum Standard-Controller der Anwendung machen. Dies geschieht in der Datei config/routes.php, die für das Routing in der Anwendung zuständig ist.