Этот вопрос был здесь для других языков, поэтому пусть здесь будет один для Ruby.
Как рассчитать количество полных лет, прошедших с данной даты? Как вы, наверное, догадались, что автоматически рассчитывать возраст человека. Ближайшим является distance_of_time_in_words
помощник Rails, поэтому следующий шаблон
Jack is <%= distance_of_time_in_words (Time.now, Time.local(1950,03,22)) %> old.
дает
Jack is over 59 years old.
Но мне нужна более точная функция, которая дает просто число. Есть один?
Если для этого существует какая-то вспомогательная функция Ruby on Rails, это нормально, хотя чистое решение Ruby будет лучше.
Изменить: суть вопроса в том, что требуется неприблизительное решение. На 2 nd марта Джек должен быть 59 лет, а на следующий день ему должно быть 60 лет. Високосные годы и тому подобное должны быть приняты во внимание.