Ruby on rails 如何在Rails的url中放置电子邮件地址

Ruby on rails 如何在Rails的url中放置电子邮件地址,ruby-on-rails,ruby,email,url,Ruby On Rails,Ruby,Email,Url,我想邀请在url中传递电子邮件的人,如下所示: localhost:3000/invite_me/email@gmail.com 我尝试了这个匹配,但它不起作用 match "/invite_me/:email" => "application#invite_me", :constraints => { :email => '/.+@.+\..*/' } 我得到以下错误: No route matches [GET] "/invite_me/waldyr.ar@gm

我想邀请在url中传递电子邮件的人,如下所示:

localhost:3000/invite_me/email@gmail.com
我尝试了这个
匹配
,但它不起作用

match "/invite_me/:email" => "application#invite_me",
    :constraints => { :email => '/.+@.+\..*/' }
我得到以下错误:

No route matches [GET] "/invite_me/waldyr.ar@gmail.com"
rake路由输出:

root  /                           application#index
  /invite_me/:email(.:format) application#invite_me {:email=>"/.+@.+\\..*/"}

约束必须是实际的正则表达式,而不是字符串

match "/invite_me/:email" => "application#invite_me",
    :constraints => { :email => '/.+@.+\..*/' }
应该是

match "/invite_me/:email" => "application#invite_me",
    :constraints => { :email => /.+@.+\..*/ }