Mam model o nazwie użytkownicy, który ma 2 atrybuty boolean send_email
i send_text
. Mam formularz, który edytuje model użytkownika, i chcę, aby ustawić te atrybuty na true/false w zależności od tego, czy pole jest zaznaczone/niezaznaczone. Oto moja formaRailsy: form_for checkbox ustawione na true lub false, czy pole jest zaznaczone/odznaczone
<%= form_for(@user) do |f| %>
<div class="field">
<%= f.label :email %> <br />
<%= f.text_area :email %> <br />
</div>
<div class="field">
<%= f.label :cell %> <br />
<%= f.text_area :cell %> <br />
</div>
<div class="field">
<%= f.label "Get Email" %> <br />
<%= f.check_box :send_email, {}, true, false %> <br />
</div>
<div class="field">
<%= f.label "Get Text" %> <br />
<%= f.check_box :send_text, {}, true, false %> <br />
</div>
<div class="actions">
<%= f.submit "Submit", class: "button small radius" %>
<%= link_to "go back", @user, class: "button small radius secondary" %>
</div>
<% end %>
I tu jest działanie user_controller
def update
@user = User.find(params[:id])
@user.update_attributes(params[:user])
redirect_to @user
end
Postać update
i zmiana wygląda to działa doskonale, ale kiedy przesłać ten formularz z send_email lub send_text pole zaznaczone , nie zmienia atrybutów modelu użytkownika (send_email, send_text) na false
więc to, co jest Twoje pytanie? – proflux
to nie działa lol. przepraszam, zapomniałem to opublikować, formularz i aktualizacja działają perfekcyjnie, ale po przesłaniu tego formularza z zaznaczonym polem send_email lub send_text nie zmienia atrybutów modelu użytkownika (send_email, send_text) na false – user2158382