[Beispiel] Verständnis Umsetzung MVC innerhalb des APF

Hier finden sich Fragen und Ergänzung zur Dokumentation. // All questions and discussions about the documentation.
Antworten
Well
Beiträge: 263
Registriert: 25.10.2009, 11:00:19
Wohnort: Beuren
Kontaktdaten:

Re: [Beispiel] Verständnis Umsetzung MVC innerhalb des APF

Beitrag von Well » 08.04.2011, 13:58:52

Hm, das liegt an deiner Konfiguration.

Code: Alles auswählen

; Pager-Ausgabe Design
Pager.DesignNamespace = "messenger::pres::templates"
Pager.DesignTemplate = "main" 
Das ist falsch. Dort musst du das Template angeben, welches der Page nutzt, um die Seitennavigation zu generieren.

Standardgemäß werden folgende Templates im Namespace »modules::pager::pres::templates« mitgliefert:
  • pager.html
  • pager_2.html
Deine Konfiguration müsste demnach in etwa so lauten:

Code: Alles auswählen

Pager.DesignNamespace = "modules::pager::pres::templates"
Pager.DesignTemplate = "pager _oder_ pager_2"
(Den Fehler hatte ich zu beginn auch gemacht :D)

Benutzeravatar
ma2604121
Beiträge: 349
Registriert: 24.01.2011, 23:42:18

Re: [Beispiel] Verständnis Umsetzung MVC innerhalb des APF

Beitrag von ma2604121 » 08.04.2011, 14:10:05

Man, man, man... Aber es wird!! ;)

Jetzt habe ich die Linkliste mit den Seiten. Leider funktioniert es noch nicht, d.h. ich sehe die Seitenzahlen, kann sie auch anklicken, aber der Seiteninhalt ändert sich nicht.

Im Quelltext ist es auch deutlich erkennbar:

Code: Alles auswählen

<div class="apf-pager">
  <div class="apf-pages">
    <span class="first">&laquo;</span>
    <a class="active" href="/apf1/index2.php" title="Seite 1 anzeigen">1</a>&nbsp;&nbsp;
    <a href="/apf1/index2.php" title="Seite 2 anzeigen">2</a>&nbsp;&nbsp;
    <a href="/apf1/index2.php" title="Seite 3 anzeigen">3</a>&nbsp;&nbsp;
    <a href="/apf1/index2.php" title="N&auml;chste Seite anzeigen!"><span style="font-size: 14px;">&raquo;</span></a>
  </div>
</div> 
Also geht irgendwo noch die Generierung der entsprechenden Links verloren.

Megger
Beiträge: 1233
Registriert: 04.11.2008, 10:57:37

Re: [Beispiel] Verständnis Umsetzung MVC innerhalb des APF

Beitrag von Megger » 08.04.2011, 14:21:19

Nutzt du den Frontcontroller?
Tutorial: Browsergame mit dem APF (Die ersten Parts handeln von Installation und Inbetriebnahme des APFs, deswegen sicherlich auch für alle Nicht-Browsergame-Programmierer interessant)

APF-Version
  • Entwicklung: 2.0
  • Produktiv: 1.15


Megger
Beiträge: 1233
Registriert: 04.11.2008, 10:57:37

Re: [Beispiel] Verständnis Umsetzung MVC innerhalb des APF

Beitrag von Megger » 08.04.2011, 14:36:00

Mh, dann weiß ich auch nicht, eigentlich sollten die Links mit Parametern bestückt sein. Die Parameter sollten so heißen, wie du sie in der config angegeben hast
Tutorial: Browsergame mit dem APF (Die ersten Parts handeln von Installation und Inbetriebnahme des APFs, deswegen sicherlich auch für alle Nicht-Browsergame-Programmierer interessant)

APF-Version
  • Entwicklung: 2.0
  • Produktiv: 1.15

Benutzeravatar
dave
Beiträge: 903
Registriert: 04.02.2011, 19:03:57
Wohnort: Berlin
Kontaktdaten:

Re: [Beispiel] Verständnis Umsetzung MVC innerhalb des APF

Beitrag von dave » 08.04.2011, 17:06:24

Tachchen ;)

Also ich nutze ja den ArrayPager von Lutz ... und der ist gaaanz einfach, obwohl er auf dem Pager aufbaut ;).
ma2604121 hat geschrieben:

Code: Alles auswählen

Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 40 bytes) in /var/www/apf1/apps/core/benchmark/BenchmarkTimer.php on line 399 
Das wundert mich ein wenig. Führst du nebenher irgendwelche Test mit dem BenchmarkTimer durch? Hast du da speziell was aktiviert und nutzt du diesen aktiv?

Benutzeravatar
Screeze
Beiträge: 1920
Registriert: 05.08.2009, 09:49:04
Kontaktdaten:

Re: [Beispiel] Verständnis Umsetzung MVC innerhalb des APF

Beitrag von Screeze » 08.04.2011, 17:08:05

Der Fehler dürfte schon behoben sein, er hatte wohl ne endlosschleife drin, weil er immer wieder da shaupttemplate eingebunden hat, das den pager, und das wieder das haupttemplate, das den pager, und immer so weiter ;)

Benutzeravatar
dave
Beiträge: 903
Registriert: 04.02.2011, 19:03:57
Wohnort: Berlin
Kontaktdaten:

Re: [Beispiel] Verständnis Umsetzung MVC innerhalb des APF

Beitrag von dave » 08.04.2011, 17:09:16

Hach ja, sowas hatte ich auch schon ... Der FF bricht ja immerhin ab, aber der IE lädt und lädt und lädt ... :mrgreen:

Benutzeravatar
ma2604121
Beiträge: 349
Registriert: 24.01.2011, 23:42:18

Re: [Beispiel] Verständnis Umsetzung MVC innerhalb des APF

Beitrag von ma2604121 » 08.04.2011, 17:15:44

dave hat geschrieben:Das wundert mich ein wenig. Führst du nebenher irgendwelche Test mit dem BenchmarkTimer durch? Hast du da speziell was aktiviert und nutzt du diesen aktiv?
Das Problem hat sich erledigt. Hatte etwas mit der Einbindung des falschen Templates in der DEFAULT_pager.ini zu tun. Den BenchmarkTimer nutze ich nicht.

Das aktuelle Problem ist, dass der Pager keine Links erzeugt. Die Linkleiste wird zwar erzeugt - aber ohne Links:

Code: Alles auswählen

<div class="apf-pager">
  <div class="apf-pages">
    <span class="first">&laquo;</span>
    <a class="active" href="/apf1/index2.php" title="Seite 1 anzeigen">1</a>&nbsp;&nbsp;
    <a href="/apf1/index2.php" title="Seite 2 anzeigen">2</a>&nbsp;&nbsp;
    <a href="/apf1/index2.php" title="Seite 3 anzeigen">3</a>&nbsp;&nbsp;
    <a href="/apf1/index2.php" title="N&auml;chste Seite anzeigen!"><span style="font-size: 14px;">&raquo;</span></a>
  </div>
</div>  
Hierzu fehlt mir noch eine Lösung. Habe schon einiges probiert, aber alles ohne Erfolg.

Benutzeravatar
dave
Beiträge: 903
Registriert: 04.02.2011, 19:03:57
Wohnort: Berlin
Kontaktdaten:

Re: [Beispiel] Verständnis Umsetzung MVC innerhalb des APF

Beitrag von dave » 08.04.2011, 17:49:56

Kannst du mal der aktuellen Übersicht halber alles was zum Pager gehört, hier rein posten? Also die Config, den Mapper sowie Controller und evtl. die Action sowie das Template plus ein paar Kommentare, wie es mit einander verzahnt ist? Damit man es einfacher nachvollziehen kann.

Well
Beiträge: 263
Registriert: 25.10.2009, 11:00:19
Wohnort: Beuren
Kontaktdaten:

Re: [Beispiel] Verständnis Umsetzung MVC innerhalb des APF

Beitrag von Well » 08.04.2011, 17:56:38

Hm, deine Konfiguration stimmt irgendwie nicht ganz... Auf der Doku-Seite findet sich folgende Vorlage:
[{Name des Pagers}]
Pager.DatabaseConnection = "{ConnectionKey}"

Pager.EntriesPerPage = "{Anzahl}"

Pager.ParameterPageName = "{URL-Name für den Start-Parameter}"
Pager.ParameterCountName = "{URL-Name für den dynamischen Anzahl/Seite-Parameter}"

Pager.StatementNamespace = "{Statement-Namespace}"
Pager.CountStatement = "{Load-Entries-Count-Statement}"
Pager.CountStatement.Params = "{Statement-Parameter}"
Pager.EntriesStatement = "{Statement-Parameter}"
Pager.EntriesStatement.Params = "{Load-Entry-Statement}"

Pager.DesignNamespace = "{Ausgabe-Template-Namespace}"
Pager.DesignTemplate = "{Ausgabe-Template-Name}"

Pager.CacheInSession = "true|false"

; seit 1.13. < 1.13 immer true
Pager.AllowDynamicEntriesPerPage = "true|false"
Irgendwie scheint deine noch zu Version 1.12 gehören... Kannst du das mal anpassen? Wobei ich keine Ahnung habe, ob es daran liegt...

Benutzeravatar
ma2604121
Beiträge: 349
Registriert: 24.01.2011, 23:42:18

Re: [Beispiel] Verständnis Umsetzung MVC innerhalb des APF

Beitrag von ma2604121 » 08.04.2011, 19:10:09

Das ist die Lösung Well!

Nun funktioniert alles, wie es soll!

Gant
Beiträge: 21
Registriert: 27.05.2011, 21:58:16

Re: [Beispiel] Verständnis Umsetzung MVC innerhalb des APF

Beitrag von Gant » 28.05.2011, 22:43:53

Ich habe ein ähnliches/gleiches Problem, nur das es bei mir scheinbar nicht an der Konfiguration liegt.

Auszug aus meiner pager.ini:

Code: Alles auswählen

; Datenbank ConnectionKey
Pager.DatabaseConnection = "MySQL"

; Anzahl Einträge pro Seite
Pager.EntriesPerPage = "5"

; Namen der URI-Parameter für Startpunkt und Anzahl/Seite
Pager.ParameterStartName = "PgrStr"
Pager.ParameterCountName = "PgrAnz"

; Pager-Ausgabe Design
Pager.DesignNamespace = "modules::pager::pres::templates"
Pager.DesignTemplate = "pager_2"
Nun wird der Pager zwar hübsch angezeigt mit einem Links zur vorigen Seite, nächsten Seite, Seite X, etc. allerdings haben die alle die gleiche URL, Parameter werden da keine hinzugefügt. Auch verstehe ich nicht genau was PgrStr und PgrAnz machen (daher habe ich sie auf den Standardwerten belassen).

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

Re: [Beispiel] Verständnis Umsetzung MVC innerhalb des APF

Beitrag von dr.e. » 29.05.2011, 18:09:52

Hallo Gant,

welche Version des APF nutzt du (Hinweise siehe http://wiki.adventure-php-framework.org ... on_des_APF)? Mir scheint, dass du eine alte Vorlage für die Konfiguration genutzt hast. Die aktuelle Konfiguration für 1.13 sieht wie folgt aus:

Code: Alles auswählen

[Guestbook]
; Database connection key
Pager.DatabaseConnection = "..."

; Entries per page
Pager.EntriesPerPage = "5"

; Names of the URI parameters for page and count per page
Pager.ParameterPageName = "Pager_Page"
Pager.ParameterCountName = "Pager_Anzahl"

; Namespace and statements for the selection of the relevant ids
Pager.StatementNamespace = "modules::guestbook"
Pager.CountStatement = "load_entries_count.sql"
Pager.CountStatement.Params = "GuestbookID:0"
Pager.EntriesStatement = "load_entry_ids.sql"
Pager.EntriesStatement.Params = "GuestbookID:0"

; Output design
Pager.DesignNamespace = "modules::pager::pres::templates"
Pager.DesignTemplate = "pager_2"

; enable session caching?
Pager.CacheInSession = "true|false"

; display pager bar to select items per page?
Pager.AllowDynamicEntriesPerPage = "true|false"
Insbesondere hast du kein Pager.ParameterPageName-Attribut definiert, was dazu führen kann, dass kein Seiten-Parameter an die URL gehängt wird.

Für jedes Release wird auch ein Satz an Beispiel-Konfigurationen ausgeliefert. Die Pakete heißen jeweils apf-configpack-*.

Ich hoffe, das hilft dir weiter.
Viele Grüße,
Christian

Gant
Beiträge: 21
Registriert: 27.05.2011, 21:58:16

Re: [Beispiel] Verständnis Umsetzung MVC innerhalb des APF

Beitrag von Gant » 29.05.2011, 21:16:08

Ich benutze die Version 1.13. Die Konfiguration dürfte scheinbar irgendwo in der Dokumentation noch nicht überarbeitet sein (schau ich nachher mal), oder ich hab da kräftig rumgepfuscht. :D
Jedenfalls hab ich

Code: Alles auswählen

Pager.CacheInSession = "false"
Pager.AllowDynamicEntriesPerPage = "true"
mal hinzugefügt und das sieht ein bisschen besser aus. Die DynamicEntriesPerPage-Leiste wird richtig mit Parametern versehen, das heißt wenn ich von 5 auf 10 stelle werden alle meine Einträge gelistet. Allerdings will das Seitenwechseln partout nicht funktionieren.

1. Die Links werden nicht richtig mit dem in Pager.ParameterStartName angegebenen Wert erstellt.
2. Auch wenn ich die URL selbst manipuliere und PgrStr=2 setze komme ich nicht auf die 2. Seite.

Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast