Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [ZendFramework] Jak korzystac z baseUrl w controlerze ?
Forum PHP.pl > Forum > PHP > Frameworki
grOm
Witam,
jak w temacie,

w plikach widoku normalnie uzywam <?=$this->baseUrl('public/cos/tam')?> i dziala ale jak np z kontrolera laduje skrypt
jak tam ustawic baseUrl

$this->view->headScript()->appendFile('public/js/tool-man/css.js');

wiem ze glupie ale napisz ktos..
darko
Ustawiasz
  1. Zend_Controller_Front::getInstance()->setBaseUrl($url);

Pobierasz
  1. echo Zend_Controller_Front::getInstance()->getBaseUrl();
grOm
hmm a da sie zeby automatycznie ($this->view->baseUrl = $this->_request->getBaseUrl()winksmiley.jpg ustawialo mi prawidlowa sciezke ? tak jak to dziala w widokach
Sajrox
Ja ładuję pliki CSS normalnie z wykorzystaniem standardowego baseUrl więc nie wiem co Ci może nie działać.
Moj kod

  1. $this->view->headLink()->appendStylesheet($request->getBaseUrl().'/media/css/reset.css');



Zrób tak:

  1. $this->view->headScript()->appendFile($request->getBaseUrl().'/js/tool-man/css.js');
Daimos
do generowania urli jest helper URL, który na podstawie routingu zrobi odpowiedni adres
hint: zrób odpowiednie routy winksmiley.jpg
seth-kk
Cytat(grOm @ 29.11.2009, 19:34:47 ) *
hmm a da sie zeby automatycznie ($this->view->baseUrl = $this->_request->getBaseUrl()winksmiley.jpg ustawialo mi prawidlowa sciezke ? tak jak to dziala w widokach

tak jesli przeniesiesz kod darko do helpera
darko
W /application/views/helpers/ utwórz plik BaseUrl.php a w nim:
  1. <?php
  2. class Zend_View_Helper_BaseUrl {
  3. public function baseUrl() {
  4. return Zend_Controller_Front::getInstance()->getBaseUrl();
  5. }
  6. }


i masz gotowy helper
Master Pain
Ja mam w nadrzędnym kontrolerze takie coś:
  1. $this->view->baseUrl = $this->baseUrl = $this->_request->getBaseUrl();


W ten sposób mam w widokach oraz kontrolerach zmienną $this->baseUrl i nie trzeba wywoływać helpera (dodatkowe requireo'wanie plików oraz ładowanie klas - po co).

Pozdrawiam!
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.