Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Poslední Sobota - Formuláře v Nette 2.1

1,974 views

Published on

Published in: Technology
  • Be the first to comment

Poslední Sobota - Formuláře v Nette 2.1

  1. 1. LOW LEVEL Low-level přístup je obdobou práce s $_POST, ale dostáváme ošetřené data.
  2. 2. Potřebujeme vykreslit checkboxy u záznamů, které čteme z databáze. Dopředu nevíme, kolik jich bude, jaké budou mít ID. Rovnou proto kreslíme checkboxy do šablony s name="sel[]"
  3. 3. $values = $form->getHttpData( $form::DATA_TEXT, 'sel[] ' ); Pole zatržených checkboxů pak získáme metodou getHttpData()
  4. 4. KRESLENÍ
  5. 5. <form n:name=myForn> <label n:name=user> <input n:name=user> <select n:name=country> <textarea n:name=note> </form> Šablonu s formulářem snadno propojíte pomocí atributů n:name
  6. 6. Renderování, například RadioListu, po jednotlivých elementech.
  7. 7. <label><input>...</label> Checkboxy a radiolisty se nyní renderují v tomto praktičtějším tvaru.
  8. 8. Bootstrap 2&3 Příklady najdete v /examples/forms
  9. 9. $form-> getOwnErrors() Renderujte chybové hlášky přímo u každého prvku. Nad formulář umístěte jen nepřiřazené hlášky. A dejte formuláři focus.
  10. 10. FÍČURY
  11. 11. Form::INTEGER Form::URL Form::INTEGER přetypuje na integer Form::URL doplní chybějící http://
  12. 12. addRule( $form::MAX_LENGTH, …, $form['max'] ); Každé pravidlo lze provázat dynamicky s hodnotou jiného prvku.
  13. 13. $form-> addCheckboxList() Novinkou je CheckboxList
  14. 14. MULTIPLE FILE UPLOAD ->addUpload('files', 'Soubory', TRUE);
  15. 15. $input-> setOmitted() Vynechá prvek z $form->getValues()
  16. 16. $button-> setValidationScope (*…+) Lze omezit, které prvky má tlačítko validovat. NULL znamená všechny!
  17. 17. Jak psát vlastní prvky? Psát vlastní prvky je nyní mnohem jednodušší. Příklad najdete v /examples/forms/DateInput.php
  18. 18. ChoiceControl MultiChoiceControl Pokud vytváříte prvek pro výběr z více možností, můžete podědit tyto abstraktní třídy.
  19. 19. NetteFormsHelpers:: createSelectBox() Snadno vygeneruje <select>
  20. 20. NetteFormsHelpers:: createInputList() Snadno vygeneruje skupinu <input>ů
  21. 21. @davidgrudl @geekovo

×