Aggiornamento

Aggiornamento alla versione 3.3

  • la protezione CSRF automatica è passata da isSameSite() a isFrom(FetchSite::SameOrigin) ed è diventata più rigorosa: le richieste provenienti dai sottodomini non passano più
  • grazie a questo addProtection() non serve più, perché la protezione automatica copre gli stessi casi; omettetelo nei nuovi form e rimuovetelo pure da quelli esistenti

Perché i token nella sessione non siano più necessari è spiegato nell'articolo Quarter Century of CSRF.

Aggiornamento alla versione 3.1

  • getValues() restituisce solo i controlli validati; se vi servono i valori di tutti i controlli indipendentemente dalla validazione, usate il nuovo metodo getUntrustedValues()
  • anche i $values passati ai gestori onSuccess e onClick contengono solo i controlli validati
  • i form autonomi sono protetti automaticamente dal CSRF con un cookie con il flag SameSite; potete permettere l'invio da un'altra origine con allowCrossOrigin()
  • la regola Form::URL completa ora un protocollo mancante con https invece che con http
  • Form::addImage() è stato rinominato in addImageButton()
  • Checkbox::getSeparatorPrototype() è stato rinominato in getContainerPrototype()
  • i form non creano più la variabile $_form nei template

Maggiori informazioni su queste modifiche nell'articolo News in Nette Forms 3.1.

Aggiornamento alla versione 3.0

  • tutti i controlli dei form sono ora facoltativi per impostazione predefinita (questa modifica è stata introdotta in Nette 2.4), quindi potete rimuovere setRequired(false)
  • assicuratevi di aggiornare netteForms.js alla versione 3 (npm install nette-forms)
  • ChoiceControl::$checkAllowedValues e MultiChoiceControl::$checkAllowedValues sono stati sostituiti dal metodo checkDefaultValue()

Aggiornamento alla versione 2.4

  • se un controllo ha una regola aggiunta con addRule() (cioè è di fatto obbligatorio), dovete contrassegnarlo come obbligatorio anche con setRequired(); inoltre setRequired(false) rende ora il controllo facoltativo, il che sostituisce i rami addCondition($form::FILLED)
  • i validatori Form::EMAIL, URL e INTEGER cambiano automaticamente l'attributo HTML type rispettivamente in email, urlnumber
  • le regole di validazione negative sono deprecate; l'alternativa a ~Form::FILLED è Form::BLANK, e ~Form::EQUAL si può sostituire con Form::NOT_EQUAL
  • il parametro interno do viene ora inviato via POST come _do, per evitare collisioni
  • le variabili interne con il trattino basso, come $_form, sono deprecate
  • ricordatevi di aggiornare netteForms.js

Aggiornamento alla versione 2.3

  • i metodi interni di filtraggio, come Nette\Forms\Controls\TextBase::filterFloat, sono stati rimossi
  • i metodi interni di validazione, come TextBase::validateFloat, sono stati spostati in Nette\Forms\Validator, così come Rules::$defaultMessages
  • i pulsanti e i campi Hidden vengono generati senza un ID HTML; se volete un ID, impostatelo con setHtmlId()
  • anche gli elementi di RadioList vengono generati senza ID; potete attivarlo con $radioList->generateId = true
  • i filtri aggiunti con TextBase::addFilter() vengono elaborati durante la validazione, e ora potete aggiungere filtri alle condizioni: $input->addCondition(...)->addFilter(...)
versione: 4.x