Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [Zend Framework] 0.6.0 getParam()
Forum PHP.pl > Forum > PHP > Frameworki
porowski
Witam wszystkich serdecznie!

Googlam, szukam, testuje... i sadsmiley02.gif

Sprawa wygląda tak, że chce zrobić migracje z Zend Framework 0.2.0 do Zend Framework 0.6.0
elementy, które wg dokumentacji trzeba było zmieić to zostały zmienione no i wszystko fajnie działa! niestety do momentu w którym w url przekazuje opcjonalne parametry np: http://gadzi.devestel.com/pl/queries/show/id/1

w ZF 0.2.0 aby pobrać ID poprostu w funkcji akcji dawałem:
  1. <?php
  2. $this->_getParam( 'id' );
  3. ?>


natomiast w ZF 0.6.0 wyskakuje mi error:
Fatal error: Call to a member function getParam() on a non-object in /home/apache/htdocs/gadzi/lib/Zend/Zend/Controller/Action.php on line 302

szperałem w tych plikach ZF aby zlokalizować conieco, niestety bezskutecznie... sad.gif

wg dokumentacji ZF niby to się nie zmieniło...

Pozdrawiam

P.S.
Życzę wesołych świąt oraz "happy php'ing in 2007"
Sabistik
Zobacz:
  1. <?php
  2. echo Zend_Controller_Action::_getParam('id');
  3. ?>
ARJ
dziwne. u mnie wywołanie
  1. <?php
  2. $this->_getParam('code');
  3. ?>
dziala normalnie. gdzie to wywołujesz i jak? pokaż trochę więcej kodu jeżeli nie zadziała to co podał Sabistik.
cyphelf
Możliwe, że nie zamieniłeś konstruktora klasy kontrolera na metodę init(). W 0.6.0 konstuktor przyjmuje w parametrach obiekt żądania, odpowiedzi i argumenty wywołania. Możliwe, że masz nadpisany konstruktor, który u Ciebie nie przyjmuje i nie ustawia tych obiektów. Spróbuj zamienić __construct() na metodę init().

Jeśli z czymś będziesz miał jeszcze kłopot to przejrzyj kilka tipsów u mnie na blogu we wpisie na temat migracji zend framework z wersji 0.2.0 do 0.6.0

W manualu ZF jest opis migracji, ale jedynie dla klas kontrolera.
porowski
@cyphelf

właśnie to było problemem smile.gif

narazie zrobiłem nieładnie:

  1. <?php
  2. public function __construct( $request, $response, $invokeArgs )
  3. {
  4. parent::__construct( $request, $response, $invokeArgs );
  5. }
  6. ?>


nie wiedząc, że jest init()

dzięki za helpa

pozdrawiam smile.gif
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.