У меня есть модельное задание с членом due_date.Я использую Chronic , чтобы принять ввод естественного языка от пользователя и преобразовать его во время, которое затем сохраняется в модели.
Я просто не уверен, что лучшие Rails,MVC-способ обработки этих вариантов использования:
- Отображение отформатированной строки (с некоторой логикой) для пользователя каждый раз, когда я показываю Task.due_date
- Разрешить пользователю вводитьнезашифрованный текст и автоматически его разбирать везде, где они могут редактировать Task.due_date
Моей первой идеей был вспомогательный метод для форматирования времени, например:
<%= format_time task.due_date %>
в сочетании с перегруженным сеттеромна аксессоре в моей модели задач, например:
attr_accessor :due_date_string
def due_date_string=(string)
self.due_date = Chronic.parse(string)
end
Это работает везде, где я хочу, чтобы за исключением в моих формах для редактирования:
<div class="field">
<%= f.label :due_date %>
<%= f.text_field :due_date_string %>
</div>
Iне знаю, как правильно настроить элемент f.text_field для подключения, чтобы он сохранял: due_date_string, но использует вспомогательный метод для отображения строки.
Мне не обязательно нужны конкретные примеры кода, просто ищу вид рВо-вторых, здесь бы использовали профессиональные Rails-ы.
Спасибо!