publikuj: Opublikuj w wykop.pl Opublikuj we flaker.pl Opublikuj na OSnews.pl Opublikuj w delicious wydrukuj
4 skomentuj »

TAGI: drupal , kurs , programowanie

2009-12-14 09:22  |  Jan Koprowski

Szkoła deweloperów Drupala. Część II: wpinanie się w formularz

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 »

publikuj: Opublikuj w wykop.pl Opublikuj we flaker.pl Opublikuj na OSnews.pl Opublikuj w delicious wydrukuj
4 skomentuj »

Polecamy

Reklama

Komentarze

  • obi

    #1 obi 2009-12-23 17:18:02 0

    Razi niużywanie funkcji t() w skutek czego np. definicja opcji jest kuriozalna, a potencjalni twórcy modułu nie zlokalizują go.

    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

  • jankoprowski

    #2 Jan Koprowski® 2009-12-24 08:11:36 0

    Dziękuję za uwagę :] bardzo słuszna. Zastosuję się do niej w najbliższych częściach :]

    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

  • kenobi

    #3 kenobi 2010-01-01 22:26:53 0

    art fajny ale te wciecia w kodzie zrodlowym, :/ nie da sie ich porobic? to znacznie przyjemniej sie czyta jak sa. (a moze juz zbyt wiele sie naczytalem zrodel i mam obsesje :/ ?)

    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

  • jankoprowski

    #4 Jan Koprowski® 2010-01-04 08:14:40 0

    Darek :] Czytasz?

    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)

Uwaga! Możesz zarejestrować się w serwisie i w ten sposób zarezerwować swój nick oraz ominąć konieczność ciągłego odczytywania wyrazów.

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.

Polecane książki

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ł