gri*_*ben 5 ruby routes ruby-on-rails rails-routing query-string
我目前正在尝试处理RoR.我将两个字符串传递给我的控制器.一个是随机十六进制字符串,另一个是电子邮件.该项目用于对数据库进行简单的电子邮件验证.我遇到的问题是当我输入类似下面的内容来测试我的页面时:
http://signup.testsite.local/confirm/da2fdbb49cf32c6848b0aba0f80fb78c/bob.villa@gmailcom
Run Code Online (Sandbox Code Playgroud)
所有我在我的params hash中得到的:email是'bob'.我离开了.中间gmail和com外面因为这会导致比赛根本不起作用.
我的路由匹配如下:
match "confirm/:code/:email" => "confirm#index"
Run Code Online (Sandbox Code Playgroud)
这看起来很简单,我需要的东西.我很难弄清楚这笔交易是什么,甚至是如何找到答案.任何帮助或指导将不胜感激.
match "confirm/:code/:email" => "confirm#index", :email => /.*/
Run Code Online (Sandbox Code Playgroud)
get我认为,最好在这里设置方法
get "confirm/:code/:email" => "confirm#index", :email => /.*/
Run Code Online (Sandbox Code Playgroud)
你的问题是Rails试图将其解释.villa@gmailcom为格式规范(例如.html或.json).AFAIK,标准的工作(或至少我使用的)是将其添加到您的路线:
:requirements => { :email => /.*/ }
Run Code Online (Sandbox Code Playgroud)
这招惹Rails不要试图巧妙地:email包含什么.
我没有惊讶你找不到任何东西,谷歌搜索"@"或"." 没有做任何有用的事情.
| 归档时间: |
|
| 查看次数: |
1831 次 |
| 最近记录: |