2013-02-27 8 views
1

동일한 단어가 단수와 복수를 모두 정의하는 단어 '섀시'에 대한 굴절을 정의해야 할 필요가 있으며 실제로이 문제로 어려움을 겪고 있습니다. 내가 내가 내가 먼저 발판을 설정할 때 (섀시) 승 inflect.uncountable %를 사용하려고 예 inflect.uncountable %w(fish sheep)의 메모를 촬영 초기화/inflections.rb 정의Rails 3.x 굴곡을 올바르게 정의하는 방법

ActiveSupport::Inflector.inflections do |inflect| 
# inflect.plural /^(ox)$/i, '\1en' 
# inflect.singular /^(ox)en/i, '\1' 
# inflect.irregular 'person', 'people' 
# inflect.uncountable %w(fish sheep) 
    inflect.uncountable(/.*chassis.*/i) 
end 

하지만 didn를 '거기라고 생각 경로의 주요 부분을 고려하지 않았고 관계 및 car_chassis 및 chassis_lookup과 같은 다른 테이블에 문제가 발생 했으므로 잘 작동합니다.

스택 오버플로에서 비슷한 질문에 대한 답변으로 제공되는 다양한 솔루션을 살펴 본 결과 inflect.uncountable(/.*chassis.*/i)이 생겼습니다. 스 캐 폴딩을 처리하는 것처럼 보였지만 경로에 문제가 있습니다. <%= link_to "Chassis", admin_chassis_url%>은 내게 쇼 경로가 없음을 나타냅니다. 조치 오류. 나는 분명히 내가 show 액션을 정규식의

에 대한

다른 예를 요청하고 생각하고 내가 경로하지만 레일에 객체를 전달하고 있지 않다 index 액션을 원하는대로 의미가

ActionController::RoutingError - No route matches {:action=>"show", :controller=>"admin/chassis"} 

# inflect.plural /^(ox)$/i, '\1en' 
# inflect.singular /^(ox)en/i, '\1' 

은 나에게 완전히 익숙해졌으며 정규 표현식을 배우는 데 평생 동안 내 머리를 둥글게하기위한 성향이나 온정이 없다는 평생 학습이 필요합니다. 굴절에 관한 문서 http://api.rubyonrails.org/classes/ActiveSupport/Inflector/Inflections.html은 솔직하게 말해서 경로입니다 etic.

분명히 굴절 권리가 없습니다. 아무도 나를 위해 "섀시"단어에 대한 굴절을 정의해야 정확하게 다른 해결책을 제공 할 수 나에게 완전한 솔루션을 제공 할 수있는 완전한 해결책을 찾았습니다 이전 답변 중 하나를 찾지 못했습니다

답변

1

귀하의 굴절 올바른 것 같습니다. '레이크 루트'가 무엇을 말해 주는지 확인하십시오. 제 경우에는 복수형 및 단일 형태의 섀시가 동일 함을 감지 할만큼 똑똑하기 때문에 #index 작업을 위해 admin_chassis 대신 admin_chassis_index를 생성했습니다. 아마 당신도 마찬가지입니다. 이것은 내가 무슨 짓을 : 설정/routes.rb

namespace :admin do 
    resources :chassis 
end 

에서

'레이크 노선'제공 (첫 번째 경로를 참고) 실행 :

admin_chassis_index GET /admin/chassis(.:format)   admin/chassis#index 
        POST /admin/chassis(.:format)   admin/chassis#create 
    new_admin_chassis GET /admin/chassis/new(.:format)  admin/chassis#new 
edit_admin_chassis GET /admin/chassis/:id/edit(.:format) admin/chassis#edit 
     admin_chassis GET /admin/chassis/:id(.:format)  admin/chassis#show 
        PUT /admin/chassis/:id(.:format)  admin/chassis#update 
        DELETE /admin/chassis/:id(.:format)  admin/chassis#destroy 

그래서, #INDEX 위해 나 '를 전화 문의 :

<%= link_to "Chassis", admin_chassis_index_url%> 
+0

굉장합니다. 하나님께서는 내가 '갈퀴 길'을 확인하지 않은 이유를 알고 있습니다. 나는이 일 동안 내 머리카락을 찢어 버렸습니다. – jamesc