Если вы считаете, что условие, использованное во всех этих ответах, пока неверно, вы можете вместо этого проверить, не является ли слово множественным.
Итак, используя в качестве примера решение Джейми Флурной, вы можете использовать self == self.pluralize
вместо 's' == self[-1, 1]
и получить следующие результаты:
"Steelers".possessive # Steelers'
"Ross".possessive # Ross's
"Chris".possessive # Chris' before inflections.rb change, Chris's after
"Ross".pluralize
- это уже «Росс», как и следовало ожидать. Но "Chris".pluralize
нет, поэтому вам нужно было бы добавить inflection.irregular "Chris", "Chrises"
в inflections.rb, чтобы форма притяжения отображалась правильно. И я полагаю, вам, возможно, придется постоянно добавлять неровности к другим необычным словам / именам, чтобы в итоге получить правильные притяжательные формы.
Опять же, это если вы придерживаетесь другого мнения, что недостаточно проверить, является ли последняя буква строки s.