0
如何使用symfony在sfDoctrineRoute中訪問用戶會話?如何使用symfony在sfDoctrineRoute中訪問用戶會話?
var_dump(sfContext::getInstance()->getUser());
返回NULL
我不能在路由
Accessing user session from a custom routing class =不良反應
如何使用symfony在sfDoctrineRoute中訪問用戶會話?如何使用symfony在sfDoctrineRoute中訪問用戶會話?
var_dump(sfContext::getInstance()->getUser());
返回NULL
我不能在路由
Accessing user session from a custom routing class =不良反應
你應該從你的控制器使用sfDoctrineRoute::setQuery()
方法獲取當前用戶會話,並使用其sfUser
生成一個查詢參考,例如,它包含的用戶憑據:
protected function executeIndex(sfWebRequest $request)
{
$query = Doctrine::getTable('Foo')
->createQuery('f')
->whereIn('f.access_level', $this->getUser()->getCredentials())
;
$this->getRoute()->setListQuery($query);
$this->foo_list = $this->getRoute()->getObjects();
}
希望它有幫助。 PS:你應該ALWAYS avoid calling sfContext::getInstance()。
你究竟想達到什麼目的?你能給我們多一點背景嗎? sfContext :: getInstance()在很多情況下不是安努... ... :-) – richsage 2010-04-29 11:17:20
我不想傳遞URL中的信息來檢索我的控制器操作中的路由對象。 我已經做了一個自定義的路由類,我不能檢索用戶會話 – belaz 2010-04-29 16:58:22