Yii Framework Forum: Hidden Input ? - Yii Framework Forum

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

Hidden Input ? Rate Topic: -----

#1 User is offline   Ly Ly 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 1
  • Joined: 01-December 17

Posted 03 December 2017 - 11:28 PM

Salve a tutti,
Un input text hidden per essere letta durante un'operazione di submit
deve essere per forza dichiarata all'interno del modulo come una variabile ?
Deve per forza appartenere al Model ?
Grazie
0

#2 User is offline   Roberto Braga 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 194
  • Joined: 18-February 13
  • Location:Roma, Italy

Posted 07 December 2017 - 03:35 AM

Qui stiamo parlando di lato client e quindi html. In generale un campo per poter essere trasmesso in fase di submit deve essere incluso nel form di cui si fa submit.

Cosa cambia se è parte di un model?
cambia il modo in cui il campo viene nominato.
Se creo un form dal model Persona (sfruttanto yii2), l'html generato avra come nome dei campi Persona[nome] Persona[cognome] etc etc
Se aggiungo (lato yii o scrivendo direttamente html) un campo al form utilizzando un widget sganciato dal model, nell'HTML questo avra come nome quello che specifico nella configurazione del widget (nulla mi impedisce di dare come nome del campo un pattern compatibile con un model ie Persona[dataNascita]).

Nell'utilizzo lato server del post la differenza risiede nel fatto che se i nomi dei campi rispettano un determinato pattern, i valori possono essere caricati automaticamente nel model.
$model = new Persona();
if ($model->load(Yii::$app->request->post()) && $model->save() {
....


$model->load() carica $model i valori mappabili del post (o comunque di un array che ne rispetti il formato)
Questo evita di dover assegnare individualmente i valori alle proprietà del model.
Se il post contiene campi non mappabili, questi vengono ignorati.
Nulla toglie che se ho un form misto con campi "mappati" e campi "liberi" posso comunque gestirli.
$model->load(Yii::$app->request->post());
$model->dataNascita=Yii::$app->request->post('dataNascita');
$model->save();

0

#3 User is offline   Federico Benedetti 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 165
  • Joined: 11-June 14
  • Location:Italy - Pesaro

Posted 10 December 2017 - 11:10 AM

Per essere "letta" durante un'operazione di submit, deve essere all'interno dei tag <form></form> a cui il submit si riferisce
0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users