WebTek::Parent und Path AttributeMit WebTek::Parent kann man festlegen, welche Seiten von welchen Unterseiten sind. Aber was sind jetzt Unterseiten von Seiten: Also nehmen wir jetzt mal den Pfad:
Wenn wir diese Url (=Pfad) aufrufen, dann wollen wir die Seite über den Benutzer max anzeigen. Wenn wir nur /users eintippen, wollen wir eine Liste aller Benutzer anzeigen. Damit wir diese Funktionalität bekommen, erzeugen wir zwei Pages mit:
Jetzt setzten wir die User Page als Unterseite von UserList. Unterseite bedeutet, dass die Page weiter rechts im Pfad ist. Wir schreiben also in unsere User Page:
Damit jetzt aber die Pages auch erzeugt werden können, brauchen wir natürlich Konstruktoren, und zwar welche mit dem Path Attribute. In unserem Fall würde der Konstruktor für die UserList so aussehen:
und für User so:
wobei die Regular Expression [^/]+ einfach alle wörter bis zum nächsten Slash / matched. Welche Möglichkeiten gibt es mit dem Path AttributeAls erstes, man kann mehr als einen Path pro Konstruktor definieren. z.B.
Desweiteren kann man in einer Page natürlich mehr als einen Konstruktor haben. Aber was passiert jetzt wenn mehr als ein Konstruktor passen würde. wir haben z.B folgende Konstruktoren:
Wenn wir jetzt den Path foo haben, würden hier zwei (der 1. und 3.) Konstruktoren matchen. Bei dem Path foo2 würden der 2. un 3. matchen. Noch schlimmer wird es, wenn es mehr als nur eine Page auf der gleichen Ebene gibt (z.b: die UserList Page hat nicht nur die User Page als Kind, sondern auch noch andere). Damit hier eindeutig geregelt ist, welcher Konstruktor zum Zug kommt gibt es folgende Regeln:
Die Reihenfolge mit welcher die Path Konstruktoren aufgerufen werden kann man ganz bequem in der _info Action nachschaun. Was die _info Action ist, wird kurz in der WebTek::Page erklärt. |
|