Честно говоря, есть много способов, как подойти к этому.Я предлагаю этот (более простой) подход, который также должен научить вас, как все работает в Ruby on Rails.
Обновляйте его в контроллере при каждом нажатии кнопки.Создайте новые методы start_time и stop_time в вашем tasks_controller.rb , где вы обновляете время.Обновите файл rout.rb , чтобы у вас были пути к методам.В представлении (в данном случае show.html.erb) создайте две кнопки, которые перенаправляют на контроллер следующим образом:
<%= link_to "Start", start_time_task_path %>
<%= link_to "Stop", stop_time_task_path %>
Наконец, в методах контроллера,сделать что-то вроде Task.update(start_time: Time.now)
(в зависимости от структуры вашей базы данных. И все готово.
Другим подходом может быть создание двух форм для Task , каждая из которых представляет одно из действий.Вы также можете отслеживать время с помощью Javascript и отправлять оба раза сразу после нажатия кнопки «Стоп».
Я надеюсь, что это отвечает на ваши вопросы. Я попытался ввести как можно меньше кода, поэтому для продолжения вам следует попробоватьчитая руководства по Rails или следуя простым онлайн-учебникам в Интернете, где показан поток MVC.