2008-09-17 4 views

답변

6

모델 클래스에서 to_param 메서드를 재정 의하여 기본 숫자 ID가 의미있는 문자열로 바뀝니다. 예를 들어,이 질문은 URL에 가장 적합한 퍼머 링크를 위해 을 사용합니다.

Ryan Bates는 Railscast on this topic입니다.

0

permalink_fu 플러그인 (Mephisto에서 추출)을 확인하십시오. Git 저장소는 located here입니다.

3

ActiveSupport는 이것을 돕기 위해 Rails에 새로운 메소드를 추가했습니다. - String # parameterize. 관련 커밋은 here입니다. 커밋 메시지에 주어진 예제는 "Donald E. Knuth".parameterize => "donald-e-knuth"

John Topley가 언급 한 to_param 재정의와 결합하면 친숙한 URL이 훨씬 쉽게됩니다.

2

rsl's stringex은 매우 훌륭합니다. permalink_fu가 올바르게 완료된 것으로 생각하십시오.

2

나는 John Topley의 제안대로 주로 to_param을 사용합니다.

to_param에서 사용하고있는 것이 무엇이든 빠르게 검색 할 수 있도록 색인을 작성해야합니다. 그렇지 않으면 각 액세스에서 전체 테이블 검색이 끝납니다. () 성능 향상 부!

빠른 해결 방법은 ID를 어딘가에 넣는 것입니다.이 경우 ActiveRecord는 나머지 부분을 무시하고 ID를 검색합니다. 이 때문에 URL이 http://example.com/someController/123-a-half-readable-title 인 많은 Rails 사이트를 볼 수 있습니다.

내 경험에 대한 자세한 내용은 this page이 유용 할 것입니다.

1

나를 위해 friendly_id 잘 작동, 그것은 또한 굼벵이를 생성 할 수 있습니다, 그래서 당신은 중복 된 URL에 대해 중요하지 않아도 범위가 지원됩니다.

0

나는 to_param 메서드를 쉽게 덮어 쓸 수있는 작고 단순한 보석을 만들었습니다. 그것은 here을 찾을 수 있습니다.

관련 문제