Szkoła deweloperów Drupala. Część II: wpinanie się w formularz
W poprzedniej części poznałeś podstawową strukturę modułu Drupala. Dodałeś też z użyciem hooka pomoc dotyczącą swojej wtyczki. W tym odcinku dowiesz się, jak modyfikować istniejące formularze Drupala.
| Przed przystąpieniem do pracy zainstaluj najnowszą developerską wersję Drupala 7. |
Plan działania
Interesuje nas formularz dodawania artykułów. Znajdziesz go pod adresem http://localhost/drupal7/node/add/article. Przyjrzyjmy się mu przez chwilę.
Dwa pierwsze pola pozwalają podać nam tytuł i przypisać obrazek. Później tekst, tagi itd. Zauważ, że większość pól w formularzu posiada nagłówek oraz krótki opis, umieszczony pod spodem.
Każde pole posiada swój tytuł oraz krótki opis definiujący jego przeznaczenie.
Naszym zadaniem jest dodanie do oglądanego formularza pola typu select "Stopień zmęczenia" i wprowadzimy cztery wartości do wyboru: Wypoczęty, Niewypoczęty, Zmęczony oraz Wykończony. Pole będzie znajdowało się tuż pod "Tags" w osobnej sekcji "Stan psychofizyczny".
Teoria budowania formularzy w Drupalu
Na początku zapoznajmy się z teorią budowania formularzy w Drupalu. Formularze w Drupalu to zwykłe tablice (ang. array). Zawarte w nich informacje przekazywane są do funkcji drupal_get_form(), która na ich podstawie buduje odpowiedni kod HTML.
Sekcja dotycząca naszej wtyczki składać się będzie z pola typu fieldset i zawartego w nim selecta.
$form['disposition'] = array(
'#type' => 'fieldset','#title' => 'Stan psychofizyczny',
'#weight' => 10,
'feeling' => array(
'#type' => 'select',
'#title' => 'Stopień zmęczenia',
'#description' => 'Określ swój poziom zmęczenia
na podstawie cztero-stopniowej skali','#default_value' => 'Wypoczęty',
'#options' => array(
'Wypoczęty' => 'Wypoczęty',
'Niewypoczęty' => 'Niewypoczęty',
'Zmęczony' => 'Zmęczony',
'Wykończony' => 'Wykończony'
)
)
);
| Dokładny opis wszystkich opcji można znaleźć w dziale Forms API Reference. Istnieje również tutorial pokazujący krok po kroku etapy tworzenia formularzy i korzystania z dostępnych wraz z nimi mechanizmów: Form API Quickstart Guide. |
Co oznacza powyższy kod? Zaczynamy od dodania elementu "disposition". Podajemy jego typ (#type) "fieldset" oraz tytuł (#title). Wewnątrz tworzymy nowe pole "feeling" - tym razem typu (#type) "select".
Tytuł i opis pola (#title, #description) to kolejno "Stopień zmęczenia" i "Określ swój poziom zmęczenia na podstawie cztero-stopniowej skali".
«poprzednia 1 2 3 następna »
Komentarze
Aby dodać komentarz, musisz podać swój nick, treść komentarza oraz poprawnie przepisać oba słowa z obrazka
(słowa muszą być rozdzielone spacją).
W treści komentarza można używać języka formatowania BBcode.
Popularne
Nazwa padła ofiarą szantażystów, inni polscy hosterzy też zagrożeni?
22
Darmowy Internet od Aero2. Jak go zdobyć i jakie są prawdziwe koszta? Instrukcja krok po kroku
11
Programowanie w środowisku Android – wprowadzenie do projektowania aplikacji dla urządzeń mobilnych
17
Premiera Diablo 3 wzbudziła dyskusję na temat gier, które zawsze chcą być online
19
Nowy problem z Windows 8: bootuje się za szybko
10
Amerykańscy rodzice straszeni „e-narkotykami” dostępnymi w Sieci
21
Anonymous upubliczniają 1,7 GB danych wykradzionych Departamentowi Sprawiedliwości USA
12
Blueseed: libertariańska sztuczna wyspa przyciągnęła już ponad sto startupów z całego świata
8
Rewolucja w Firefoksie, nowa łatka czterokrotnie ograniczyła zużycie pamięci
20
Darmowy Internet od Aero2. Jak go zdobyć i jakie są prawdziwe koszta? Instrukcja krok po kroku
11
CVDazzle: makijaż jest w stanie pokonać automatyczne systemy ulicznego monitoringu
3
Programowanie w środowisku Android – wprowadzenie do projektowania aplikacji dla urządzeń mobilnych
17
Ubuntu 12.04 LTS już dostępny: stabilna dystrybucja na następne pięć lat?
28
Zostań webmasterem polskiego rządu, zarobisz na komfortowe życie dla siebie i swojej rodziny
33
Społeczność
miszczu Wspaniała technologia! Dzięki niej zawsze będziesz patrzył w kierunku w...
miszczu Tytuł nie oddaje rzeczywistości jak zwykle. Mimo wszystko Microsoft...
mistrz autor jest samobójcą, używa internet explorera
boemund_2 Bardzo dobrze. Na dzień dzisiejszy posiadacz VS2010 za prawie 3 tysiaki...
Fox @Wszerad
W obydwu przypadkach piszesz jednak o filmach przyrodniczych ;)
WebDev Uważam, że lepiej pisać aplikacje okienkowe stosując przenośne biblioteki...
Daresh A ja na pulpicie nie mam żadnych ikon i nie potrzebuję takich narzędzi :)
- Najdmen.pl: Konta www z wyłączonym licznikiem transferu od IONIC.pl (1)
- 2BE.PL: [Oferta] Promocja jak złoto w 2BE.PL (1)
- gardius: Dobra hurtownia sportowa (1)
- gardius: Tanie książki gdzie warto kupować? (1)
- Najdmen.pl: PROMOCJA, 500 DOMEN .EU ZA 1 PLN NETTO ! (1)
- VMLine: [Oferta] Serwery VPS Xen-HVM/OpenVZ z darmową administracją (2)
- Marek: Generowanie PDFa (2)
Polecane książki
Praca
Czytaj Webhosting
Chcesz być na bieżąco z naszymi informacjami? Zapisz się na Newsletter.
Zarejestruj domenę
Sprawdź dostępność swojej domeny:
| .pl: | 0 zł | .com: | 19.90 zł | |
|---|---|---|---|---|
| .com.pl: | 0 zł | .eu: | 19.90 zł |










#1 obi 2009-12-23 17:18:02 0
IP: 87.205.15.[...] Mozilla/5.0 (X11; U; Linux i686; pl-PL; rv:1.9.0.11) Gecko/2009060309 Ubuntu/8.04 (hardy) Firefox/3.0.11
#2 Jan Koprowski® 2009-12-24 08:11:36 0
IP: 77.91.24.[...] Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/532.0 (KHTML, like Gecko) Chrome/3.0.195.38 Safari/532.0
#3 kenobi 2010-01-01 22:26:53 0
IP: 79.191.62.[...] Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.9.1.6) Gecko/20091201 Firefox/3.5.6
#4 Jan Koprowski® 2010-01-04 08:14:40 0
IP: 153.19.42.[...] Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.9.1.4) Gecko/20091016 Firefox/3.5.4 (.NET CLR 3.5.30729)