Why are anchor characters not allowed in routing requirements ?

hi,

I have a route which says:


UUID_REGEX = /^([0-9a-f]{8})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{2})([0-9a-f]{2})-([0-9a-f]{12})$/

resources :checkout, :only => [:show, :create], :constraints => { :id => UUID_REGEX }

I get an error saying:

Regexp anchor characters are not allowed in routing requirements

full stacktrace is at https://gist.github.com/4578503

Why are anchor characters not allowed in routing requirements ?

I am using Rails 3.2.11

from http://www.stephensykes.com/blog_perm.html?133
This is because these regexes are now automatically anchored at the start and end of the path component. Just removing the anchors from your regex fixes it.

ah. thanks Dheeraj

that was one old article :slight_smile:
but still useful

rails guides also mentions it on
http://guides.rubyonrails.org/routing.html#segment-constraints