Utworzyłem klasę formularza na podstawie ActiveModel, cały formularz udało mi się utworzyć, jednak jest problem z wyświetlaniem czasu. DO tej pory były to trzy pola select z odpowiednimi wartościami liczbowymi. Chcę jednak zastosować time_select, który wygeneruje mi godziny, minuty i sekundy. Formularz służy do filtracji rekordów, w związku z tym po wysłaniu formularz z znowu się pojawia, problem z żeby w prosty sposób przechwycić wysyłaną godzinę, minutę i sekundę oraz żeby odpowiednie pozycje w selectach zostały zaznaczone po wysłaniu formularza. Próbowałem z opcją :default ale coś nie chce działać.
Przykład:
f.time_select :start_time, ...
Generuje mi trzy pola godzina, minuta sekunda (bez daty bo ją wyłączyłem)
Po wysłaniu mam takie parametry
assign_multiparameter_attributes w activerecord używane jest w funkcji attributes=, próbowałem użyć tego w activemodel to pokazał mi się błąd, że nie rozpoznaje metody attributes=
Ten kod wyrzuca błąd związany z multiparametrami (czyli zmiennymi z nawiasami), nie rozpoznaje ich jako zmiennych. pewnie inicjalizator mam źle napisany. Zrobiłem wprawdzie własną obsługę multiparametrów (nie zamieszczone), na wzór tego z ActiveRecord, ale wygląda to brzydko.