A drupal_get_form nem rakja össze a formot.

Schmidt Attila képe

Drupal 6-ban csináltam már több formot is FORM API-val, nagyjából minden elsőre sikerült.

Most viszont D7 alatt nem bírom megjeleníteni a formot.

Az echo drupal_get_form('és_itt_a_form_neve') csak a tömbbel tér vissza, de nem rakja ösze a formot, azaz a képernyőn csak ez a szó jelenik meg: Array.

Ha print_r-el kiíratom a tömböt, akkor megjelenik az a tömb, amit összeállítottam, azaz a drupal_get_form nem csinál semmit.

Változott valami ezzel kapcsolatban a D7-ben a D6--hoz képest? Vagy miért nem működik?

Melyik modulhoz, modulokhoz kapcsolódik a téma?: 
Drupal verzió: 
szantog képe

'azaz a drupal_get_form nem csinál semmit.'

Pont mint a mi a dolga. Visszaadja a formot, ami egy renderable array, tehát le kell renderelni. Erre taláták fel a drupal_render() függvényt.

0
0

----
Rájöttem, miért kérdezek olyan ritkán a drupal.hu-n. Amíg szedem össze az infokat a kérdéshez, mindig rájövök a megoldásra.

Schmidt Attila képe

KÖSZÖNÖM! működik

Csak azt nem értem, hogy a D6-ban ezt sosem kellett meghívni... rákerestem, egyszer sem használtam ezt a függvényt.

0
0
pp képe

igen, mert hatosban a renderelt html-t adta vissza a függvény. Hetesben már az oldalkiszolgálás is megváltozott, és lehetőséged van arra, hogy egy tömböt adj vissza, amit aztán a Drupal renderel le. (és ez utóbbi a javasolt) Na ebbe a tömbbe csak be kell dobnod a formot. Ez a mechanizmus azért jó, mert lehetőség van rá, hogy preprocessel belenyúlj a tömbbe, mert mondjuk fel akarod cserélni a dolgok sorrendjét. Pl. egy lapozót nem alulra akarsz, hanem felülre, vagy felülre is.

pp

1
0