2012-03-27 5 views
1

Google의 Rails 앱에서는 REST 아키텍처가 대소 문자를 구분하는 사용자 URL 만 허용합니다. 사용자 URL이 ourapp.com/ChrisScutti 또는 ourapp.com/chrisscutti으로 나타나기를 바랍니다. 분명히 누군가가 대소 문자를 기반으로 URL을 잘못 입력했기 때문에 404를 숨기고 싶지 않습니다.레일 앱 대소 문자를 구분하는 URL

답변

2

PostgreSQL과 같이 대소 문자를 구분하는 dbms를 사용하고 있기 때문에 발생할 가능성이 큽니다. 그렇다면 사용중인 조건을 변경하여 해당 사용자가 대소 문자를 구분하지 않도록하십시오.

User.where("lower(username) = ?", username.downcase).first 

브라우저의 URL 모양은 변경되지 않지만 대소 문자를 구분하지 않는 기준을 사용하여 쿼리합니다.

+0

여기에 마이크를 믿으려고합니까? 하하는 여기에 묻는다면 –

+1

에게 감사 할 수도 있습니다. 그것은 같은 이슈로 다른 사람들을 도울 수 있습니다. – miked

0

이 보석에 경로 파견 차기 전에 전체 경로와 downcase 것입니다.

https://rubygems.org/gems/route_downcaser

각 컨트롤러에 미친 해킹을 수행 할 필요가 없습니다이 방법을.

/카 스텔

관련 문제