2014-04-29 5 views
0

"품사 (part of speech)"라는 모델을 생성하고 싶습니다. 자연적 복수형은 "품사"입니다. 나는 ActiveSupport::Inflector으로 강제 할 수 있지만, 내가 말할 수있는 한, 세 가지 경우 모두를 다루기 위해 "parts_of_speech"및 "PartsOfSpeech"에 대해해야 할 것입니다."음성의 일부"복수화

조금 더러워졌습니다. 나는이 권리에 접근하고 있는가? 더 좋은 방법이 있습니까?

+2

'SpeechPart'를 사용하여'대신 speech_parts'없는 이유는 무엇입니까? 따라서 해킹 할 것이 없으며 레일이 명명 규칙을 처리하도록 할 수 있습니다. 특별히 이것을 처음 접한다면이 부담을 가하지 말아야합니다. – Benj

+0

저에게 3 가지 사례 각각과 일치하는 정규 표현식이 있습니다. 나와 함께하고 싶지 않지만 상상의 지점. :) 편집 : [Rails의 현재 악곡 목록] (https://github.com/rails/rails/blob/master/activesupport/lib/active_support/inflections.rb)은 다음과 같은 경우에 좋은 시작을 제공해야합니다. 그래도 그럴 의도 야. – gdpelican

+2

@BenjaminSinclaire "Partial of speech"는 기술적 인 의미로 고정 된 단어입니다. 다시 정렬 할 수있는 구절이 아닙니다. 같은 의미의 "말하기 부분"이란 단어는 없습니다. 또한 "말하기 부분"이라는 구가 도움이되지 않습니다. – sawa

답변

2

그렇게 할 수 있습니다. 그냥 파일 config/initializers/inflections.rb을 만들고 여기에 다음을 추가합니다

ActiveSupport::Inflector.inflections do |inflect| 
    inflect.irregular 'part_of_speech', 'parts_of_speech' 
end 

Inflector에 대한 자세한 내용을 읽기 : http://api.rubyonrails.org/classes/ActiveSupport/Inflector/Inflections.html

+0

마지막 줄과 관련하여 "품사"는 기술적 인 의미로 고정 된 단어입니다. 다시 정렬 할 수있는 구절이 아닙니다. 같은 의미의 "말하기 부분"이란 단어는 없습니다. 또한 "말하기 부분"이라는 구가 도움이되지 않습니다. – sawa

+0

@sawa : 네 말이 맞아. 난 몰랐어. 내 대답이 업데이트되었습니다. – spickermann

관련 문제