Verkettete Auswahlliste

52 views
Skip to first unread message

Janine S. W.

unread,
Sep 28, 2009, 6:12:27 AM9/28/09
to CakePHP-de für deutsche CakePHP Entwickler
Liebe CakePHPler

ich bin cakephp neuling ("webentwicklung mit cakephp" gelesen) mit
etwas php, mysql, css und html-Erfahrung und wenig javascript und
keinen ajax Kentnissen.
Verwende php 5 und die aktuelle cakephp version.

Ich möchte mit cakephp verkettete Auswahllisten realisieren
( http://aktuell.de.selfhtml.org/artikel/javascript/verkettete-auswahllisten/
)

Grundlage ist eine Tabellenstruktur mit reichlichen und verzweigten
hasMany/belongsTo Beziehungen die jeweils über Tabellenspalten A_id
etc. realisiert sind.

(falls es wichtig ist: mein Schema sieht etwa so aus:
A has many
C ...................................................................
F belongsTo G
......................C has many D, D has many E, E has many F
B has many
C ...................................................................
F belongsTo H
.........................................................................................
F belongsTo I
)

Früher hätte ich wohl dynamisch mit php eine javascript-Datei (im
selfhtml-Beispiel terminAuswahl.js) mit den Relationen erstellt.
Gibt es mit cakephp eine elegantere Lösung?

Danke!
Janine


Gibt es mit cakephp eine elegante Methode das zu realisieren?

Christoph Stickel

unread,
Sep 29, 2009, 6:08:04 PM9/29/09
to cakep...@googlegroups.com
hi,
es kommt dabei ziemlich darauf an, was dir dabei vorallem wichtig ist.
möglichkeiten sowas umzusetzten gibt es dutzende.
kommt auch sehr darauf an, was man selbst für elegant hält.
ajax requests sind natürlich eine einfache möglichkeit. bei großen
datenmengen auf jeden fall die beste. jedoch hat man eben das problem,
dass die daten erst geladen werden, wenn etwas ausgewählt ist. dh man
sieht erst ~200ms nachdem man ausgewählt hat das ergebnis. macht meist
nichts, da 200ms eben so kurz sind.
hat man sehr kleine datenmengen, wie in dem selfhtml beispiel kann man
z.B. eine javascript datei einbinden. dann kannst du statt da eine
variable definieren auch das per ajax nachladen und in die datei nur
ein json objekt zu legen.
allerdings muss man dazu eine neue datei vom server laden, was auch
nicht unbedingt ideal für die performance ist.
du kannst es eben auch einfach im html source inline ausgeben.
noch ne ähnliche möglichkeit wäre nen json objekt in nen html
kommentar zu legen und das dann mit javascript auszuführen.
von der komplexität sind die möglichkeiten eigentlich alle gleich. am
ende läuft es eignetlich immer darauf hinaus, dass man sich eben mit
php ein json objekt bastelt, das eben irgendwann ausgeführt wird. es
unterscheidet sich praktisch nur darin wie es übergeben wird.
wenn man das javascript minimal halten will kann man natürlich statt
nem json objekt auch die fertige liste als html zurückliefern.
warscheinlich würde ich, wenn es sich nicht um eine webapp handelt,
deren html ausgabe komplett per javascript generiert wird, das sogar
so machen. einfach da ich dann den html source, der die liste erstellt
an einer stelle hätte und das javascript keine ahung haben müsste, wie
das html letztendlich aussieht.

hoffe das gibt paar ideen und hilft,
viele grüße

2009/9/28 Janine S. W. <janin...@gmx.de>:
Reply all
Reply to author
Forward
0 new messages