Die optionale Zeitauswahl mit allow_blank ist standardmäßig 00:00

Ich versuche, ein Zeitfeld in meinem Formular optional zu machen. Ich mache das:

<%= f.time_select :end_time, minute_step: 5, include_blank: true %>

Da bei der Übermittlung standardmäßig Datumsinformationen automatisch mit time_select übermittelt werden, sehen die Parameter folgendermaßen aus:

end_time(1i): '2000' end_time(2i): '1' end_time(3i): '1' end_time(4i): '' end_time(5i): ''

Rails interpretiert dies als reales Datum und setzt end_time auf 00:00

Gibt es einen Fix / ein Workout, um ein optionales Zeitfeld zu haben? Ich habe das im Controller versucht:

if params[:event][:end_time] && params[:event][:end_time][:hour].blank? && params[:event][:end_time][:minute].blank?
  params[:event][:end_time] = nil
end

Aber es scheint nicht zu funktionieren.

Jede Hilfe wird geschätzt!

Antworten auf die Frage(2)

Ihre Antwort auf die Frage