So übergeben Sie benutzerdefinierte Daten an eine Vorlage
Ich bin neu in OOP-Frameworks im Allgemeinen und Silverstripe im Besonderen. Ich bin sicher, ich vermisse etwas wichtiges!
Ich versuche gerade, einen Twitter-Feed für meine Hauptseite zu erstellen. In meinem Pagecontroller habe ich:
public function getTwitterFeed() { ... }
... was eine Reihe von Tweets bekommt. Ich kann diese Daten beliebig formatieren, sodass die Struktur der Daten und die Funktion irrelevant sein sollten.
In den Silverstripe-Tutorials geben sie das folgende Beispiel:
public function LatestNews($num=5) {
$holder = NewsHolder::get()->First();
return ($holder) ? News::get()->filter('ParentID', $holder->ID)->sort('Created', 'DESC')->limit($num) : false;
}
Dies wird dann in der Vorlage wie folgt aufgerufen:
<% loop LatestNews %>
<% include NewsTeaser %>
<% end_loop %>
Diese Funktion basiert jedoch auf einem DataModel-Objekt (NewsHolder) und ruft Daten aus der Datenbank ab (was bei meiner Twitter-Funktion nicht der Fall ist).
Welchen Variablentyp soll diese Funktion zurückgeben? Eine Anordnung? Ein Objekt?