Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [ZendFramework]index nie odnajduje akcji
Forum PHP.pl > Forum > PHP > Frameworki
Spawnm
Witam,

dziś postanowiłem pobawić się z zf, zabawę rozpocząłem z tym kursem:
http://www.heavymind.net/zend-framework-tutorial/

I niby wszystko już działa po za odnajdywaniem akcji innych niż index :/
W tutorialu doczytałem że aby to zlikwidować trzeba ustawić setBaseUrl();
Niestety po ustawieniu nadal nie odnajduje moich akcji ...
Ktoś miał podobny problem? Jeśli tak to jak go rozwiązał ?
darko
Akcji czy kontrolerów innych niż index? A masz template'ki widoków utworzone, np. kontroler test - akcja testuje, widok: /views/scripts/test/testuje.phtml ? W ogóle jakieś błędy się pokazują ?
Spawnm
Templatki są , błędów brak .
Dodam że indexAction się ładuje, ale tylko gdy w adresie strony nie podam kontrolera i akcji :/
melkorm
Kod
Zend Framework w wersji 1.5.1.


Obecna wersja to 1.10, nie sądzisz że marnujesz czas z tym archaicznym samouczkiem? Lepiej zrób sobie QuickStart'a ze strony Zenda smile.gif
Robert1985
Hej podpinam się do tematu jestem w trakcie czytania książki Zend Framework in Action i natrafiłem na podobny problem, a w zasadzie identyczny.
Plik index.php w folderze Public:
  1. error_reporting(E_ALL|E_STRICT);
  2. ini_set('display_errors',true);
  3. date_default_timezone_set('Europe/London');
  4.  
  5. $rootdir = dirname(dirname(__FILE__));
  6. set_include_path($rootdir.'/library' . PATH_SEPARATOR . get_include_path());
  7. require_once 'Zend/Loader.php';
  8.  
  9. Zend_Loader::loadClass('Zend_Debug');
  10. Zend_Loader::loadClass('Zend_Controller_Front');
  11.  
  12. $front = Zend_Controller_Front::getInstance();
  13. $front->throwExceptions(true);
  14. $front->setControllerDirectory('../application/Controllers');
  15. $front->setBaseUrl('/htdocs/moje/Public');
  16. $front->dispatch();

Plik IndexController w Apllication/Controllers:
  1. Zend_Loader::loadClass('Zend_View');
  2.  
  3. class IndexController extends Zend_Controller_Action{
  4. public function indexAction(){
  5. $this->view->assign('title','Hello World!!!');
  6. }
  7. public function addAction(){
  8.  
  9. }
  10. }

Virtualhost:
  1. <VirtualHost *:80>
  2. DocumentRoot C:\Xampp\htdocs\moje\Public
  3. ServerName moje.local
  4. ServerAlias www.moje.local
  5. <Directory "C:\Xampp\htdocs\moje\Public">
  6. AllowOverride All
  7. </Directory>
  8. </VirtualHost>

Plik .htaccess w public
  1. RewriteEngine on
  2. RewriteCond %{REQUEST_FILENAME} !-f
  3. RewriteRule .* index.php


Do tego oczywiście widok w application/views/scripts/index i wpis pliku systemowym odnośnie localhosta.

Problem objawia się tak jak u poprzednika czyli kiedy wpisuję jako adres www.moje.local otrzymuję poprawnie wyświetlony widok.
Natomiast przy probach dopisania do adresu www.moje.local/index lub www.moje.local/index/index otrzymuję błąd 404.
Próbowałem utworzyć inne akcje ale jest to samo. Proszę o pomoc.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.