Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [ZendFramework][ZF] Nie czyta mi kontrolerów innych niż index
Forum PHP.pl > Forum > PHP > Frameworki
ulisses
Podczas robienia quickstarta (tutorial zenda) zauważyłem że nie czyta mi guestbook-a.

Zacząłem sprawdzać różne ustawienia i nie znalazłem. W końcu doszedłem do tego że ZEND nie czyta mi żadnych innych kontrolerów niż index. Akcje pod index mi czyta.

Czyli działa:
http://quickstart.local/
http://quickstart.local/index
http://quickstart.local/index/index
http://quickstart.local/index/testindex - inna akcja dopisana z palca

Nie działa
http://quickstart.local/ind - kontroler IndController utworzony przez automat Zenda do tworzenia controlerów, widoków itd.

Nie mogę nic znaleźć na ten temat. Może macie jakiś pomysł.

Mam php 5.3, Maca - ale to nie powinno mieć żadnego znaczenia - chyba.

Pozdr.
Wojtek
quality
Hmmm problemow moze byc duzo.

Pierwszym z nich jest sprawdzenie htaccess. Ale pewnie dziala dobrze skoro piszesz ze wyswietla ciagle stadardowy kontroller.

Nie wiem co Ty namieszales tam na poczatku. Masz dodane moduly ? jesli tak to sprawdzaj adresy http://quickstart.local/default/ind - default to standardowy modul.

inna sprawa wszystkie nazwy controllerow i action musza miec odpowiednia nazwe ; np: testController.php i nazwa klasy testController, a akcje nazwaAction ( to jest nazwa przykladowej metody)

Jeszcze jedna rzecz to jest Zend_Route, mozesz poczytac o tym, masz standardowy czy przerabiales. Wiecej informacji daj. Nikt nie jest wrozka smile.gif

Postprawdzaj to dobrze ewentualnie daj jakis kod z kontrolera.

Adrian
ulisses
Adres http://quickstart.local/default/ind działa prawidłowo. Więc przynajmniej jakiś trop już jest.

Modułów nie tworzyłem. Generalnie jechałem sobie grzecznie "step by step" z tutorialem Zenda. Kombinowanie z dodatkowymi kontrolerami zacząłem jak się spostrzegłem że coś mi nie działa, więc chciałem utworzyć coś prostego al'a 'echo' i tu klops.

Kod jest banalny:
IndController.php w Controllers
<?php

class IndController extends Zend_Controller_Action
{
public function init()
{
/* Initialize action controller here */
}

public function indexAction()
{

}
}

W /quickstart/application/views/scripts/ind/index.phtml - prosty plik z tekstem do wyświetlenia.
Zend Route mam standadrdowy. Nic nie przerabiałem. Bootstrap tak samo standardowy.

Mam nadzieję że to naprowadzi.
sebastiankozub
w pliku kofiguracyjnym .ini w katalogu config ustaw wyswietlanie bledow =1 i wklej nam co ci wyswitla gdy uruchamiasz te kontrolery
darko
a masz widok dla tego kontrolera i czy korzystasz z ACL?
quality
Hmmm jesli adres http://quickstart.local/default/ind dziala prawidlowo to znaczy ze aplikacja dziala dobrze.

Masz ustawiona budowe modulowa dlatego zend wymaga wpisania nazwy default, cos masz zle w routerze ustawionego.

Aplikacji wyglada dobrze.

Poustawiaj te parametry w configu tj pisali poprzednicy i podeslij info o bledach:

phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1
resources.frontController.params.displayExceptions = 1

Adrian
zend
Ustaw domyslny routing na /:controller/:action/*
  1. $frontController->getRouter()->addRoute(
  2. 'default',
  3. new Zend_Controller_Router_Route(
  4. '/:controller/:action/*',
  5. 'controller' => 'index',
  6. 'action' => 'index'
  7. )));
  8.  
  9. ;to wstaw do application.ini
  10. resources.router.routes.default.route = "/:controller/:action/*"
  11. resources.router.routes.default.type = "Zend_Controller_Router_Route"
  12. ;resources.router.routes.default.defaults.module = default
  13. resources.router.routes.default.defaults.controller = index
  14. resources.router.routes.default.defaults.action = index


Rozwiązania są równorzędne. Powinno śmigać
ulisses
Już działa, choć co gorsza nie wiem co przestawiłem (bawiłem się .htaccess, httpd.con -apache i pliki wymienione w quickstart).
W każdym bądź razie nie były to te elementy które mi podpowiadaliście, czyli nie routingi, acl-e itd.

Szkoda że nie zarejestrowałem co sprawiało ten kłopot, bo następnym razem znowu będę pewnie szukał rozwiązania zamiast wiedzieć od razu.

Za podpowiedzi dziękuję.

Pozdr.
Wojtek

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.