设置url的参数

时间:2014-10-15 11:28:08

标签: symfony url parameters routing

我的重置密码需要参数/令牌来识别用户以重置密码。

我的方法是生成一个带有令牌的网址(例如:test.site.com/resetpassword/sample_token)以验证用户并允许他/她重置密码。

问题:是指当我设置routing.yml接受参数并导航到网址(test.site.com/resetpassword)时,会产生The server returned a "404 Not Found".错误我认为是可以接受的,如果我设置了像test.site.com/resetpassword/test这样的参数,它会重定向到默认页面,即登录页面。但根据我的要求,它应该打开重置密码表。

我尝试了这里描述的方法:http://symfony.com/doc/current/book/routing.html#adding-requirements但没有用,并且产生了问题中描述的类似失败尝试。

我的routing.yml实施如下,

test_accounts_homepage:
  path:     /
  defaults: { _controller: TestAccountsBundle:Index:index }

test_accounts_login:
  path:     /signin
  defaults: { _controller: TestAccountsBundle:Signin:index }    

test_accounts_resetpassword:
  path:     /resetpassword/{userToken}
  defaults: { _controller: TestAccountsBundle:ResetPassword:index }
  requirements:
    userToken: ".+"
    _method: GET

仅供参考:我在调试模式下尝试了代码,但它甚至没有到达控制器。

对此事的任何帮助都会有很大的帮助:)。

1 个答案:

答案 0 :(得分:0)

尝试以下更改

  1. 更新userToken:"[a-z0-9-_]+"
  2. 如果需要登录密码重置页面,请检查 ResetPassword 控制器。