Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [Zend Framework] 0.6.0 getParam(), Migracja ZF 0.2.0 --> ZF 0.6.0
porowski
post
Post #1





Grupa: Zarejestrowani
Postów: 30
Pomógł: 0
Dołączył: 3.07.2004
Skąd: Łódź

Ostrzeżenie: (0%)
-----


Witam wszystkich serdecznie!

Googlam, szukam, testuje... i (IMG:http://forum.php.pl/style_emoticons/default/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... (IMG:http://forum.php.pl/style_emoticons/default/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"
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
Sabistik
post
Post #2


Administrator wortalu


Grupa: Przyjaciele php.pl
Postów: 960
Pomógł: 39
Dołączył: 21.10.2003
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Zobacz:
  1. <?php
  2. echo Zend_Controller_Action::_getParam('id');
  3. ?>
Go to the top of the page
+Quote Post
ARJ
post
Post #3





Grupa: Zarejestrowani
Postów: 453
Pomógł: 22
Dołączył: 20.09.2004
Skąd: Kraków - NH -

Ostrzeżenie: (0%)
-----


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.

Ten post edytował ARJ 23.12.2006, 20:28:06
Go to the top of the page
+Quote Post
cyphelf
post
Post #4





Grupa: Zarejestrowani
Postów: 68
Pomógł: 1
Dołączył: 27.03.2006

Ostrzeżenie: (0%)
-----


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.
Go to the top of the page
+Quote Post
porowski
post
Post #5





Grupa: Zarejestrowani
Postów: 30
Pomógł: 0
Dołączył: 3.07.2004
Skąd: Łódź

Ostrzeżenie: (0%)
-----


@cyphelf

właśnie to było problemem (IMG:http://forum.php.pl/style_emoticons/default/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 (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 24.12.2025 - 09:26