6

次のようなURL内でメールを渡す人を招待したいと思います。

localhost:3000/invite_me/email@gmail.com

これを試しましmatchたが、機能しません。

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

次のエラーが発生します。

No route matches [GET] "/invite_me/waldyr.ar@gmail.com"

レーキルート出力:

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

1 に答える 1

9

制約は、文字列ではなく実際の正規表現である必要があります

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

する必要があります

match "/invite_me/:email" => "application#invite_me",
    :constraints => { :email => /.+@.+\..*/ }
于 2012-10-25T15:20:12.957 に答える