我正在一个类中构建一个 URL,如果以后有必要,我希望能够通过更改 routing.yml 文件来更改路由。
如果我有路线:
userSignup:
url: /user/signup
param: { module: user, action: signup }
如何在类中使用url_for('userSignup')助手来动态创建 URL?
我正在一个类中构建一个 URL,如果以后有必要,我希望能够通过更改 routing.yml 文件来更改路由。
如果我有路线:
userSignup:
url: /user/signup
param: { module: user, action: signup }
如何在类中使用url_for('userSignup')助手来动态创建 URL?
我只用 1.2 试过这个,所以我不能代表任何以前的版本......
从您的任何课程中:
sfContext::getInstance()->getConfiguration()->loadHelpers(array('Url'));
...然后您可以继续使用 url 帮助程序中定义的任何函数。
您无需在操作中使用视图助手来生成 url:
$this->generateUrl("userSignup");
该方法在sfComponent.class.php中定义。这是推荐的方法,而不是加载视图助手并使用它们的 hacky 解决方法。
你应该使用
sfLoader::loadHelpers(array('Url'));
您不应该使用它sfContext::getInstance()
来检索配置。
// instead of using
sfContext::getInstance()->getConfiguration()->loadHelpers('Url');
// use
sfApplicationConfiguration::getActive()->loadHelpers(array('Url'));