Sziasztok!
Nemrég kezdtem fejleszteni egy modult Drupal 5.1 alá. A problémám az, hogy van egy formom, ami a drupal_get_form függvénnyel nagyon szépen megjelenik. Ugyanezt a formot szeretném használni, ahhoz is, hogy valaki szerkeszthesse a felvitt adatokat, de nem tudom hogyan kell default_value-kkal kitöltve kirakni a formot. Már jó ideje kutatok a megoldás után, de hiába. Akinek ez rutin kérdés, kérem segítsen!
Ubul
Fórum:
hook_form
a hook_form fv -t nézegesd, a megoldás ott van a sorok között.
ugyan az a hook_form fv. fog meghívódni szerkesztéskor és új adat feltöltésekkor is. mivel a fv megkapja a $node változót, ezért amikor '#default_value' => $node->valami -t beállítod az adott form elemnek avval megteszed azt is, h pl szerkeszés esetén a megfelelő értékek betöltődjenek a megfelelő részekre.
ajánlom kiindulási alapnak ezt a példa gyűjteményt...
A formnál ugye átadod
A formnál ugye átadod paraméternél, hogy mit szerkeszt, ennyi erővel akár az összes default_value -t átadhatod neki egy tömbben. A drupal_get_form előtt betöltöd ezeket az adatokat (pl. node esetén egy node_load() -dal akár), a drupal_get_form() -ba pedig belerakod a függvény nevét meg a változókat (tartalmazó tömböt), és kész is.
Aries
http://aries.mindworks.hu
Köszönöm a segítséget.
Köszönöm a segítséget. Sejtettem, hogy túlbonyolítom az életem. Az nem is jutott eszembe, hogy a drupal_get_formon keresztül paramétert is átadhatok, a nodeexample module pedig egész más, "drupalosabb" szemlélettel ismertetett meg.
Azt nem írtad, hogy node
Azt nem írtad, hogy node form-ról van szó, az a form egy speciális típus, mivel nagyon sok modul hozzányúl a hook_form_alter -en keresztül (is), abban az esetben érdemes az általános konvenciókat használni, s nodetipus_form($node) -ból a $node -ot használni.
Aries
http://aries.mindworks.hu