Foros del Web » Programando para Internet » PHP » Zend »

Problema al mostrar mis vistas

Estas en el tema de Problema al mostrar mis vistas en el foro de Zend en Foros del Web. Hola que tal, inicio diciendo que soy novato en Zend Framework, he seguido algunos ejemplos de internet, pero tengo un problema: Yo creé un virtual ...
  #1 (permalink)  
Antiguo 10/02/2011, 11:09
 
Fecha de Ingreso: abril-2009
Ubicación: Lima
Mensajes: 108
Antigüedad: 15 años
Puntos: 0
Pregunta Problema al mostrar mis vistas

Hola que tal, inicio diciendo que soy novato en Zend Framework, he seguido algunos ejemplos de internet, pero tengo un problema:
Yo creé un virtual Host (que era lo que me recomendaban) y lo direccioné a mi carpeta public, inclusive cuando voy a mi navegador y escribo http://project.zend/ (alias de mi virtual host) este me lleva al layout.phtml (que es lo normal) y me muestra lo que ahí tiene, hasta ahí normal, pero cuando quiero ver una de mis vistas, y pongo en el navegador el módulo, nombre de mi controlador seguido del la función Action, de esta forma: http://project.zend/admin/Guestbook/index, no me muestra nada, les muestro la configuración que realicé:
Aplication.ini:
Cita:
[production]
;First resource to load
resources.modules[] =

phpSettings.display_startup_errors = 0
phpSettings.display_errors = 0

includePaths.library = APPLICATION_PATH "/../library"

autoloaderNamespaces[] = "My"

bootstrap.path = APPLICATION_PATH "/Bootstrap.php"
bootstrap.class = "Bootstrap"

resources.frontController.controllerDirectory = APPLICATION_PATH "/modules/admin/controllers"

resources.layout.layoutPath = APPLICATION_PATH "/modules/admin/layouts/scripts"
resources.layout.layout = layout

resources.view[] =
resources.view.basePath = APPLICATION_PATH "/modules/admin/views/"

;Modules config
resources.frontController.moduleDirectory = APPLICATION_PATH "/modules"
admin.resources.layout.layoutPath = APPLICATION_PATH "/modules/admin/layouts/scripts"
admin.resources.layout.layout = layout
index.php:
Código PHP:
<?php
defined
('APPLICATION_PATH')
|| 
define('APPLICATION_PATH'realpath(dirname(__FILE__) . '/../application'));

defined('APPLICATION_ENV')
|| 
define('APPLICATION_ENV', (getenv('APPLICATION_ENV') ? getenv('APPLICATION_ENV') : 'production'));

set_include_path(implode(PATH_SEPARATOR, array(
realpath(APPLICATION_PATH '/../library'),
get_include_path(),
)));

require_once 
'Zend/Application.php';

$application = new Zend_Application(APPLICATION_ENV,APPLICATION_PATH '/configs/application.ini');
$application->bootstrap()->run();
Bootstrap.php
Código PHP:
class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
{
protected function 
_initDoctype()
{
$this->bootstrap('view');
$view $this->getResource('view');
$view->doctype('XHTML1_STRICT');
}

protected function 
_initView()
{
$view = new Zend_View();
$view->doctype('XHTML1_STRICT');
$view->headTitle('My First Zend Framework Application');

$viewRenderer Zend_Controller_Action_HelperBroker::getStaticHelp er('ViewRenderer');
$viewRenderer->setView($view);

return 
$view;
}

protected function 
_initPlugins(){
$this->bootstrap('frontController');
$plugin = new My_Controller_Plugin_Layout();
$this->frontController->registerPlugin($plugin);
}

Espero haber sido claro con mi problema y ojala me puedan ayudar, gracias de antemano por sus respuestas.
  #2 (permalink)  
Antiguo 10/02/2011, 12:26
 
Fecha de Ingreso: agosto-2008
Mensajes: 271
Antigüedad: 15 años, 8 meses
Puntos: 2
Respuesta: Problema al mostrar mis vistas

Hola

Tengo entendido que ZF almacena las vistas bajo el directorio,
application\views\scripts\nombre-controlador\, en tu caso como tienes configurado un modulo debería quedar así la ruta en tu viewPath (APPLICATION_PATH "/modules/admin/views/")
application\nombre-modulo\views\scripts\

Espero funcione saludos
  #3 (permalink)  
Antiguo 10/02/2011, 13:02
 
Fecha de Ingreso: abril-2009
Ubicación: Lima
Mensajes: 108
Antigüedad: 15 años
Puntos: 0
Respuesta: Problema al mostrar mis vistas

Gracias por responder, supongo que te refieres a lalinea de codigo del application.ini:
resources.view.basePath = APPLICATION_PATH "/modules/views/"

lo cambie como dijiste:
resources.view.Path = APPLICATION_PATH "/admin/views/scripts/"

pero igual sigue sin mostrarme nada, alguna otra idea??
  #4 (permalink)  
Antiguo 10/02/2011, 13:28
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 3 meses
Puntos: 845
Respuesta: Problema al mostrar mis vistas

A que te refieres con nada ?, queda en blanco sin mostrar ninguna Exception ?, esta seteado el APPLICATION_ENV a "development" en el .htaccess o vhost ?

Saludos.
__________________
http://es.phptherightway.com/
thats us riders :)
  #5 (permalink)  
Antiguo 10/02/2011, 13:54
 
Fecha de Ingreso: abril-2009
Ubicación: Lima
Mensajes: 108
Antigüedad: 15 años
Puntos: 0
Respuesta: Problema al mostrar mis vistas

me sale totalmente en blanco la pagina, no me sale nada.
APPLICATION_ENV lo he seteado en el index.php:
defined('APPLICATION_ENV')
|| define('APPLICATION_ENV', (getenv('APPLICATION_ENV') ? getenv('APPLICATION_ENV') : 'production'));


production es lo que esta confiurado en mi application.ini

en mi htaccess tengo lo siguiente:
Cita:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ /index.php [NC,L]
¿Qué es lo que me falta?
  #6 (permalink)  
Antiguo 10/02/2011, 14:00
Avatar de SergeMedina  
Fecha de Ingreso: septiembre-2007
Ubicación: Guadalajara, Jalisco
Mensajes: 459
Antigüedad: 16 años, 7 meses
Puntos: 20
Respuesta: Problema al mostrar mis vistas

Pon esto en .htaccess

Código apache:
Ver original
  1. SetEnv APPLICATION_ENV "development"
__________________
I see dead pixels
  #7 (permalink)  
Antiguo 10/02/2011, 14:13
 
Fecha de Ingreso: abril-2009
Ubicación: Lima
Mensajes: 108
Antigüedad: 15 años
Puntos: 0
Respuesta: Problema al mostrar mis vistas

Lo acabo de poner, pero no me aparece nada, también cambie "development" por "production", pero sigue apareciendome la pagina en blanco.
  #8 (permalink)  
Antiguo 10/02/2011, 14:35
Avatar de SergeMedina  
Fecha de Ingreso: septiembre-2007
Ubicación: Guadalajara, Jalisco
Mensajes: 459
Antigüedad: 16 años, 7 meses
Puntos: 20
Respuesta: Problema al mostrar mis vistas

Revisa los logs de apache, quiza por ahi te diga algo sobre que esta pasando.
__________________
I see dead pixels
  #9 (permalink)  
Antiguo 10/02/2011, 14:38
 
Fecha de Ingreso: agosto-2008
Mensajes: 271
Antigüedad: 15 años, 8 meses
Puntos: 2
Respuesta: Problema al mostrar mis vistas

xtian87
Como estas poniendo la url y como se llama tu clase controller? muestraelc codigo de tu clase controller.
  #10 (permalink)  
Antiguo 10/02/2011, 14:50
 
Fecha de Ingreso: abril-2009
Ubicación: Lima
Mensajes: 108
Antigüedad: 15 años
Puntos: 0
Respuesta: Problema al mostrar mis vistas

estoy llamando asi:
http://project.zend/admin/Guestbook/index
este en mi controlador:
GuestbookController.php
Cita:
class GuestbookController extends Zend_Controller_Action
{

public function init()
{

}

public function indexAction()
{

}

public function signAction()
{
$request = $this->getRequest();
$form = new Application_Form_Guestbook();

if ($this->getRequest()->isPost()) {
if ($form->isValid($request->getPost())) {
$comment = new Application_Model_Guestbook($form->getValues());
$mapper = new Application_Model_GuestbookMapper();
$mapper->save($comment);
return $this->_helper->redirector('index');
}
}
$this->view->form = $form;
}
}
y en mi vista, index.phtml solo tengo esto: <p>jhkjhjkhjkhkj</p>
  #11 (permalink)  
Antiguo 10/02/2011, 15:06
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 3 meses
Puntos: 845
Respuesta: Problema al mostrar mis vistas

Te falta el prefijo del modulo en el controller, debería ser así:

Código PHP:
Ver original
  1. class Admin_GuestbookController extends Zend_Controller_Action
  2. {}

aunque dudo que solucione tu problema, porque minimo debería mostrarte alguna Exception, comprobaste los logs de apache como te sugirio SergeMedina ?
__________________
http://es.phptherightway.com/
thats us riders :)
  #12 (permalink)  
Antiguo 10/02/2011, 15:23
 
Fecha de Ingreso: abril-2009
Ubicación: Lima
Mensajes: 108
Antigüedad: 15 años
Puntos: 0
Respuesta: Problema al mostrar mis vistas

Heeeeyyy gracias... le puse ecomo prefijo el nombre del modulo y ahora si me mostroooo ... gracias por sus respuestas y ayudarmeeee!!! ... pero solo unas consultitas más:
1.- ¿Cómo puedo hacer para que me muestre los errores?
-Le cambio a 1 estas 2 lineas??:
phpSettings.display_startup_errors = 0
phpSettings.display_errors = 0


2.- Yo recuerdo que encontre una pagina en donde al momento de crear el controlador no era necesario poner el prefijo del módulo, que es lo que tengo que configurar para que no sea necesario poner ese prefijo??
  #13 (permalink)  
Antiguo 10/02/2011, 16:51
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Problema al mostrar mis vistas

Es necesario cuando es un controlador de un modulo que no sea el default.

Saludos.
  #14 (permalink)  
Antiguo 10/02/2011, 17:13
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 3 meses
Puntos: 845
Respuesta: Problema al mostrar mis vistas

Cita:
Iniciado por xtian87 Ver Mensaje
1.- ¿Cómo puedo hacer para que me muestre los errores?
-Le cambio a 1 estas 2 lineas??:
phpSettings.display_startup_errors = 0
phpSettings.display_errors = 0
En tu application.ini no tenes una sección development que justamente tiene esas opciones a 1 ?
Cita:
Iniciado por xtian87 Ver Mensaje
2.- Yo recuerdo que encontre una pagina en donde al momento de crear el controlador no era necesario poner el prefijo del módulo, que es lo que tengo que configurar para que no sea necesario poner ese prefijo??
Cita:
Iniciado por GatorV Ver Mensaje
Es necesario cuando es un controlador de un modulo que no sea el default.

Saludos.
__________________
http://es.phptherightway.com/
thats us riders :)

Etiquetas: 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 04:34.