Записи времени входа / выхода из Ruby on Rails - PullRequest
2 голосов
/ 08 февраля 2012

Я пытаюсь записать запись time_in и time_out для модели под названием timeclock. Вот что я пытаюсь сделать, но не могу приступить к работе!

  1. Проверьте последнюю запись часов и посмотрите, заполнены ли в ней записи «time_in» и «time_out». Если это так, то создайте новую запись (как это?):

    form_for([@employee, @employee.timeclocks.build]) do |f|
    
      f.hidden_field :time_in, :value => @current_time 
    
      f.submit "Clock In"
    
    end
    
  2. Если уже есть запись таймлока, которая является неполной (имеет запись time_in, но не запись time_out, создайте форму или обновите последнюю запись.

Мне удалось получить записи о времени в БД, но никогда в одной записи данных, например: http://cl.ly/E0Rg (изображение)

Имеет ли это смысл? Если вам нужны уточняющие вопросы, не стесняйтесь спрашивать! Спасибо!

1 Ответ

6 голосов
/ 08 февраля 2012

с кодом, который вы предоставляете, вы всегда создаете новую запись, так как @ employee.timeclocks.build используется для создания записи.

Если вы хотите обновить запись, вы должны сначала извлечь ее, а затем передать эту запись в метод form_for

, чтобы получить запись, используйте @ employee.timeclocks.find fapptiful where, чтобы получить запись, которую вы хотите обновить

form_for([@employee, @timeclock]) do |f|

  f.hidden_field :time_in, :value => @current_time 

  f.submit "Clock In"

end

где вы устанавливаете @timeclock в вашем контроллере либо с новой записью, либо с записью, которую хотите обновить

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...