3

我们正在运行一个构建在 Zend Framework 1.x 之上的项目,并且正在考虑迁移到 Symfony 2。我们有一个使用 Doctrine 2 映射的域模型。

我们的(定制的)基本控制器类扩展了 Zend_Controller_Action 以提供一个非常方便的特性,灵感来自 Flow3:

假设我有这个控制器:

class UserController extends BaseController
{
    public function editAction(User $user)
    {
        // ...
    }
}

如果我加载此 URL:

/user/edit?user=123

基本控制器将自动加载标识为 123 的 User 实体,并将其作为参数传递给 editAction() 方法。如果省略 user 参数,或者不存在具有此身份的用户,则会引发异常。

Symfony 2 是否有这样的实现,或者是否有可能实现它,以及如何实现?

4

1 回答 1

3

来自SensioFrameworkExtraBundle@ParamConverter 注释正是这样做的。如果您使用的是 Symfony 标准发行版,您可以直接使用它。

于 2012-04-16T15:36:37.903 回答