2012-10-25 15 views
5

मैं लोग हैं जो इस तरह एक यूआरएल के अंदर अपने ईमेल गुजरता आमंत्रित करना चाहते हैं:कैसे ऑन रेल्स यूआरएल में एक ईमेल पता लगाने के लिए

localhost:3000/invite_me/[email protected] 

मैं इस match कोशिश की, लेकिन यह काम नहीं कर रहा है।

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

मैं निम्न त्रुटि हो रही है:

No route matches [GET] "/invite_me/[email protected]" 

रेक मार्गों उत्पादन:

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

उत्तर

8

आपका बाधा एक वास्तविक नियमित अभिव्यक्ति और न कोई स्ट्रिंग होने की जरूरत है

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

होना चाहिए

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