Einige Fragen...

Hier dreht sich alles um die auf der Webseite veröffentlichten Tutorials. // This forum is all about the APF tutorials.
Antworten
Benutzeravatar
ma2604121
Beiträge: 349
Registriert: 24.01.2011, 23:42:18

Einige Fragen...

Beitrag von ma2604121 » 25.01.2011, 22:43:22

Hallo,
ich beschäftige mich nun seit einigen Tagen mit dem APF. Was bereits ganz gut klappt (da es kein großes Kunststück ist), ist das Einbinden von Seiten mittels

Code: Alles auswählen

<core:addtaglib namespace="tools::html::taglib" prefix="doc" class="createobject"/>
<doc:createobject requestparam="Seite" defaultvalue="start"/>
Die Unterseiten kann ich dann auch mittels index.php?Seite=Impressum usw. aufrufen. Die entsprechenden Seiten liegen unter ./frontend/content/ mit den Namen c_de_[Bezeichnung].html.

Soweit alles wunderbar.

Jetzt möchte ich aber gerne eine weitere Seite haben z.B. mit Feldern zum Registrieren eines Benutzers. Dann würde der Link in der menu.html wie folgt aussehen:

Code: Alles auswählen

<a href="./?Seite=Register">Registrieren</a>
Die HTML-Seite würde ich dann unter /apps/sites/[Seite]/pres/templates/ als register.html speichern. Und den dazugehörigen Controller unter /apps/sites/[Seite]/pres/documentcontroller/ mit der Bezeichnung register_v1_controller.php.

Ist das soweit richtig?

Wenn ja: Wieso wird dann die Seite nicht angezeigt, wenn ich den Link anklicke?

Und eine Frage zu der HTML-Datei: Kann ich deren Inhalt auch direkt in HTML verfassen oder muss das zwingend über die taglibs erfolgen?

Benutzeravatar
dr.e.
Administrator
Beiträge: 4527
Registriert: 04.11.2007, 16:13:53

Re: Einige Fragen...

Beitrag von dr.e. » 26.01.2011, 08:44:29

Hallo ma2604121,

herzlich willkommen im APF-Forum! :geek:
Die HTML-Seite würde ich dann unter /apps/sites/[Seite]/pres/templates/ als register.html speichern. Und den dazugehörigen Controller unter /apps/sites/[Seite]/pres/documentcontroller/ mit der Bezeichnung register_v1_controller.php.
Nicht ganz. Da du den <doc:createobject /> nutzt, muss auch hier eine korrespondierende Seite unter ./frontend/content/ angelegt werden, die jedoch dann auf dein Formular unter ./apps/sites... verweist. Das kannst du in der Seite c_de_Register.html wie folgt tun:

<core:importdesign namespace="sites::..." template="register" />
Darin baust du dann dein Formular auf und definierst den zugehörigen Controller.
Wenn ja: Wieso wird dann die Seite nicht angezeigt, wenn ich den Link anklicke?
Ich vermute, weil es entweder keine c_de_Register.html gibt oder diese leer ist.
Und eine Frage zu der HTML-Datei: Kann ich deren Inhalt auch direkt in HTML verfassen oder muss das zwingend über die taglibs erfolgen?
Du bist als Entwickler absolut frei, was in HTML-Dateien steht. Wenn du dort direkt HTML-Code stehen hast ist das genauso valide wie den HTML-Coide über Tags zu konstruieren. Als Daumenregel gilt hier immer: statisches Markup immer direkt im HTML, dynamisches - woweit notwendig - in Tags auslagern oder durch einen Controller befüllen lassen. Tags schreibst du üblicherweise erst dann, denn du mit einem Controller die gewünschte Funktion nicht mehr erreichen kannst. Oft reicht dabei aber schon ein simpler Platzhalter in statischem HTML um dieses dynamisch zu gestalten.

Solltest du weitere Fragen haben, jederzeit gerne! :)
Viele Grüße,
Christian

Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast