有没有办法从 symfony1.4 中的 ClassGeneratorConfiguration 访问会话变量?我需要它,因为我想根据会话变量设置默认过滤字段值。
问问题
1228 次
2 回答
2
您可以从上下文中获取它(我认为没有其他方法),并且您可以使用该getFilterDefaults
方法为字段设置默认值或使用将getFilterFormOptions
用户作为选项传递到表单并在那里实现逻辑。这就是我通常的做法:
class productGeneratorConfiguration extends BaseProductGeneratorConfiguration
{
/**
* @return sfBasicSecurityUser
*/
public function getUser()
{
return sfContext::getInstance()->getUser();
}
public function getFilterFormOptions()
{
return array('user' => $this->getUser());
}
public function getFilterDefaults()
{
return array(
'some_field' => $this->getUser()->getSomething() ? 'a' : 'b';
);
}
}
于 2013-08-18T09:23:32.850 回答
0
您可以访问会话变量,如下所示:
$varname = sfContext::getInstance->getUser()->getAttribute('your_field');
于 2013-09-08T16:59:02.110 回答