Foros del Web » Programando para Internet » PHP » Frameworks y PHP orientado a objetos »

MVC - Condiciones en la vista

Estas en el tema de MVC - Condiciones en la vista en el foro de Frameworks y PHP orientado a objetos en Foros del Web. Hola buenas, Tengo la siguiente duda.. estoy realizando un proyecto en MVC, y tengo en mis vistas, una cabecera con los tipicos links del menú ...
  #1 (permalink)  
Antiguo 10/05/2011, 12:02
 
Fecha de Ingreso: julio-2008
Ubicación: Barcelona
Mensajes: 2.100
Antigüedad: 16 años, 5 meses
Puntos: 165
MVC - Condiciones en la vista

Hola buenas,

Tengo la siguiente duda.. estoy realizando un proyecto en MVC, y tengo en mis vistas, una cabecera con los tipicos links del menú a cada una de las secciones, y quiero que la página en la que estas, se quede marcada en el menú superior... la lógica de esto, se coloca dentro de la vista?

Un saludo!
  #2 (permalink)  
Antiguo 10/05/2011, 16:48
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 6 meses
Puntos: 1517
Respuesta: MVC - Condiciones en la vista

La vista debe ser con el propósito de enseñar directamente lo que deseas. Sí va a tener código de PHP, pero solo aquellos que son para trabajar directamente en la vista, como por ejemplo foreach, echo, print, if (para evitar errores). La lógica debe ser en el modelo y el controlador debe ser un medio de comunicación entre el modelo y la vista. Lo que tu quieres se puede hacer en el modelo. Podrías crear un array y que este contenga los datos del enlace, algo como
Código PHP:
Ver original
  1. $row = array(
  2.     array('url'=>'http://....', 'class'=>'normal', 'id'=>'foo1', 'value'=>'foo 1', .....),
  3.     array('url'=>'http://....', 'class'=>'active', 'id'=>'foo2', 'value'=>'foo 2', .....),
  4.     array('url'=>'http://....', 'class'=>'normal', 'id'=>'foo3', 'value'=>'foo 3', .....),
  5.     array('url'=>'http://....', 'class'=>'normal', 'id'=>'foo4', 'value'=>'foo 4', .....),
  6. );
Eso lo formaste en el modelo, luego envias la información del resultado del modelo con el controlador y luego en la vista haces algo como
Código PHP:
Ver original
  1. <?php if(count($row) > 0): ?>
  2.     <?php foreach($row as $v): ?>
  3.         <a href="<?php echo $v['url']; ?>" id="<?php echo $v['id']; ?>" class="<?php echo $v['class']; ?>"><?php echo $v['value']; ?></a>
  4.     <?php endforeach; ?>
  5. <?php endif; ?>
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos

Etiquetas: condiciones, mvc, vistas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:05.