Я хочу согласиться с Арамом. Мои представления были завалены кодом форматирования, пока я не начал добавлять методы моделей, которые значительно их очистили. В моем последнем приложении это были «Имена и времена» (приложение для планирования сотрудников).
class Employee
def full_name
self.first_name + " " + self.last_name
end
end
И время всегда было болью, время было повсюду в моих взглядах (и жизненно важно для приложения). Поэтому везде, где я хотел отобразить время начала, вместо вызова атрибута, который я хранил в базе данных, я вызывал пользовательский метод
class Schedule
def formatted_start_time
self.start_time.strftime('%I:%M%p')
end
end
Также в качестве заключительного замечания: если вы продолжите форматировать время одинаково повсюду в своих представлениях, вы можете расширить класс Time и сделать свои звонки более краткими. В моей папке инициализаторов я добавил файл "Conversions.rb", где я добавил эту маленькую строку
Time::DATE_FORMATS.update(:shift => '%I:%M%p')
Теперь все, что я делаю, это звоню:
time_object.to_s(:shift)
чтобы вернуть мою часто используемую отформатированную строку в любое место приложения. У вас может быть целый список ваших любимых форматов, чтобы очистить ваши представления и сделать их более понятными.