Best practice per il posizionamento della logica di visualizzazione in una vista in CakePHP

StackOverflow https://stackoverflow.com/questions/134948

  •  02-07-2019
  •  | 
  •  

Domanda

Ho un'applicazione CakePHP 1.2.

Mi imbatto nel caso in cui ho bisogno di fare un po 'di logica per rendere le cose correttamente nella vista.

Esempio: Ho una tabella chiamata Tipi. Esistono flag per vari tipi, quindi ogni riga ha uno o più campi BOOL impostati. Per un tipo di tipo, memorizzo il contenuto di un RTF in un altro campo.

Quindi, quando visualizzo un elenco di tutti i refusi nella vista, voglio creare un collegamento per i tipi che sono il tipo in cui memorizzo RTF. Non voglio mostrare un link, altrimenti.

Qual è il posto migliore per questa logica?

Voglio usare html- > link per creare il link, ma non posso usarlo all'interno del mio modello. Se la logica dovesse andare nel modello e, in tal caso, dovrei creare HTML nel mio modello, ad es. il link?

È stato utile?

Soluzione

Suggerirei di mantenere quella logica nella vista, la creazione di HTML nel modello interrompe l'intera separazione vista / modello. non penso che ci sia qualcosa di sbagliato nella logica della vista, personalmente tendo a vincolarlo ai condizionali di base.

alla fine penso che l'idea sia capire dove questa logica si adatta meglio. in questo caso, la logica è, "se ho un certo tipo, dovrei fornire un link ad esso", che è un problema di visualizzazione, non un problema di modello.

Altri suggerimenti

Crea il tuo AppHtmlHelper che estende HtmlHelper e fa il controllo per te.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top