Ho la seguente percorso:Rails itinerario personalizzato con vincoli - personaggi di ancoraggio espressioni regolari non sono accettati in requisiti di routing
get 'users/:user_id/:name', to: 'profiles#show',
:constraints => { :name => /[a-zA-Z0-9_]+$/ }, as: 'user_profile'
che produce l'errore:
Regexp anchor characters are not allowed in routing requirements: /[a-zA-Z0-9_]+$/
Così l'ho capito il carattere^non è permesso, ma non sono sicuro di quale carattere stia producendo questo particolare errore di routing.
Ci sono anche '\ A' e' \ Z' di quelli che conosco. – rausch
@rausch - In generale, nelle espressioni regolari è meglio continuare a utilizzare il punto di omissione e il dollaro per questo scopo. Alcuni ambienti (JavaScript, POSIX, XML) non supportano '\ A' e' \ Z'. –
@ Ωmega In Ruby non dovresti farlo; raggiungere sempre per '^' e '$' potrebbe portare a vulnerabilità della sicurezza: http://homakov.blogspot.ru/2012/05/saferweb-injects-in-various-ruby.html http://guides.rubyonrails.org /security.html#regular-expressions –