Mam następujący kod w moich poglądówszyn: simple_form: Pierwsze pusty ciąg z kolekcji checkbox
<%= f.input :role_names, as: :check_boxes, collection: @program.role_names %>
I ilekroć wysłać formularz jestem coraz wartościami coś ["admin, "moderator", ""]
ale spodziewałem się czegoś podobnego ["admin, "moderator"]
, dlaczego tak jest?
Ponadto zrobiłem element kontrolny, a po ostatnim polu wyboru znajdował się znacznik <input name="user[role_names][]" type="hidden" value="">
w obrębie tej samej grupy kontrolnej. Przypuszczam, że to jest dodawanie na końcu w params[:user][:recipient_role_names]
.
Jak mam sobie z tym poradzić? Wiem, że mogę zrobić reject(&:blank?)
, ale czy istnieje lepszy sposób na params[:user][:recipient_role_names]
? Chcę również wiedzieć, dlaczego element wejściowy jest dodawany? Czy to błąd w prostej formie, czy też zrobiłem coś złego?
Inne info:
- wersja simple_form gem: 2.0.4
- szyn wersję: 3.2.8
idealnie .. ll przyjąć w 5 minut .. jakiś czas przymus .. Nie mogę teraz zaakceptować .. Btw chciałbym zrozumieć dlaczego ... czy masz jakiś pomysł, dlaczego jest to funkcja szyn? Chodzi mi o to, dlaczego stworzyli tę funkcję? i czy to ma naprawić coś innego, jeśli tak, to co to było? Byłoby wspaniale, gdybyś mógł to wyjaśnić trochę ... z góry ... – n00b
możesz przeczytać wyjaśnienie tutaj http://api.rubyonrails.org/classes/ActionView/Helpers/FormHelper.html#method-i-check_box (to sekcja Gotcha) –