среда, июля 15, 2009

Полезные заметки по symfony - 2

Если надо использовать функции из View в Controller, то надо вопользоваться sfLoader

class blogActions extends sfActions
{
public function preExecute(){
...
}
public function executeRedirect(sfWebRequest $request)
{
sfLoader::loadHelpers('Url');
$this->redirect(url_for('@archive_blog?id='.$this->currentBlog->getId(), 301);
}
}


Но лучше использовать внутренние средства, в symfony почти для каждого из составляющих MVC если дублирующие средства:

class blogActions extends sfActions
{
public function preExecute(){
...
}
public function executeRedirect(sfWebRequest $request)
{
sfLoader::loadHelpers('Url');
$this->redirect(
$this->getController()->genUrl('@archive_blog?id='.$this->currentBlog->getId()),
301
);
}
}


Исключение составляет вызов action из View, как например в ZendFramework, но в symfony похоже это не трубуется (прим. автора: по крайней мере в моей практике).

Комментариев нет: