iGE*_*GEL 77 routing ruby-on-rails ruby-on-rails-3
我有一条路线供我的用户使用/iGEL/contributions,效果很好.但现在用户注册的名称为'A.and.B.',现在路由无法匹配,因为名称包含点.
我的路线:
get "/:user/contributions" => 'users#contributions'
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
Zab*_*bba 136
请在此处查看蓝色信息框:
默认情况下,动态段不接受点 - 这是因为点用作格式化路径的分隔符.如果需要在动态段中使用点,请添加一个覆盖它的约束 - 例如,
:id => /[^\/]+/允许除斜杠之外的任何内容.
那将是例如:
get "/:user/contributions" => 'users#contributions', :constraints => { :user => /[^\/]+/ }
Run Code Online (Sandbox Code Playgroud)
如果您的变量段是最后一个,那么使用[^\/]正则表达式也将使用该格式.在这种情况下使用:
/([^\/]+?)(?=\.json|\.html|$|\/)/
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
21751 次 |
| 最近记录: |