2011-05-30 11 views
6

He creado una función para recuperar el mensaje de la bandeja de entrada del usuario y mostrarlo usando plantillas de "mensajes de perfil de usuario". También he agregado la funcionalidad (en la misma función) para eliminar el mensaje de la bandeja de entrada masiva si el usuario hizo clic en Eliminar todo el botón. Pero después de eliminar todos los mensajes, la página/plantilla no está redering. Por favor, hágamelo saber cuál podría ser el motivo.Problema de representación de plantilla de marco de kohana de PHP - página en blanco

Estoy presentando la página usando el método siguiente.

$this->template->body = View::factory("user-profile-messages", array(
      "msg" => $msg, 
      "messages" => $messages, 
     ))->render(); 

Estoy utilizando la última versión de Kohana.

+2

¿Está 'echo'ing' $ body' en su vista de plantilla? – alex

+0

No. Estoy usando el método View :: factory() -> render() para visualizar las plantillas. – Rahul

+0

'render()' simplemente convierte el objeto View en una cadena. Alex significa que debes mostrar var '$ body' en alguna parte de tu vista' $ this-> template'. – biakaveron

Respuesta

2

En primer lugar, si usted no está ampliando el controlador de la plantilla, a continuación, el código debe ser:

$view = View::factory("user-profile-messages", array(
    "msg" => $msg, 
    "messages" => $messages, 
)); 

$this->response->body($view) 

de salida se ajusta por $this->response->body($view). No es necesario llamar a render ya que tiene un método __toString.


Si está extendiendo el controlador de plantilla, que parece que es. Se genera salidas automáticamente a menos que explícitamente diga que no:

$this->auto_render = FALSE; 

Por defecto, se va a hacer que la plantilla de la plantilla con un cuerpo variables que contendrá su punto de vista.

Cuestiones relacionadas