Czeckbox'y do przesyłania danych do kontrolera

Witam, proszę o sugestie jak umieszczone pola radio, które działają bez zarzutu zamienić na checkbox’y, próbowałem kilku rzeczy, ale nie działało.

W kontrolerze mam taki kod (kluczowe elementy wyróżnione):

if params[:rquery] @rq = Rquery.new(params[:rquery]) tasks = Task.find(:all, :conditions => ['(status = 1 or status=2) and who like ? and data_wyk is not null and (data_wyk > ? and data_wyk < ? and project like ?)', "%#{@rq.employee}%", @rq.date_from, @rq.date_to,
[color=#FF0000]%#{@rq.project}%"]
[/color]]) @projects2 = tasks.group_by{|t| t.project} else @rq = Rquery.new @projects2 = {} end
A w widoku coś takiego:

 <% @projects.each do |project| %>

[color=#FF0000]<%= f.radio_button :project, project %>
[/color]

<%= tr_proj(project)%> <br> <% end %>
Lepiej z bbcodem się nie da, jakieś sugestie jak w railsach zamienić te przyciski radiowe czekboksami???
Chciałbym funkcjonalność zachować, ale aby była możliwość wyboru dowolnej konfiguracji projektów.

Z góry dzięki za sugestie

może coś w deseń:

check_box_tag("Zaznacz", project.id, false, :name=>'checked[]')

albo f.check_box w Twoim przypadku

ogólnie nie rozumiem Twojego problemu za bardzo? Co jest źle ? :slight_smile:

Co do checkbox’ów to napisz może co chcesz osiągnąć, bo ja nic nie rozumiem z tego co napisałeś. Ewentualnie może te dwa railscasty podpowiedzą Ci jak to zrobić:
http://railscasts.com/episodes/17-habtm-checkboxes
http://railscasts.com/episodes/52-update-through-checkboxes

Plus parę luźnych uwag:

  1. Czemu masz polskie nazwy w kodzie? Np data_wyk.
  2. projects2, status = 1. Nadawaj zmiennym i stanom nazwy, które coś znaczą.
tasks = Task.find(:all, :conditions => ['(status = 1 or status=2) and who like ? and data_wyk is not null and (data_wyk > ? and data_

Poczytaj o named_scope, bo lepszą praktyką jest takie zapytanie przerzucić do modelu.

Do pirata…
Problem może kretyński, ale coś w deseń tego co napisałeś już miałem na f.check_box zrobione, tyle że nie wiem jak poprawnie wszekazać id wszystkich czecked do controlera, jaki obiekt będzie przetrzymywał moje checked po akcji submit…

Może chodzi o to, że wartości pól typu check box zawsze są przekazywane do kontrolera tzn.

check_box_tag(“Zaznacz”, project.id, false, :name=>‘checked[]’)

przekaże wartość project.id jeśli check box jest zaznaczony a false jeśli niezaznaczony, a więc w kontrolerze „odsiej” wszystkie false i będziesz miał zaznaczone check boxy
np.

checked = params[:checked]
checked.delete_if{|key, val| val == false}

skorzystaj z czegos mądrego do formularzy jak semantic_form_for, z automatu będziesz jakie zabawki miał do tego to co chcesz jest w wielu, no kilk uscreen castach RayanB, a to dla kazdego biblia jak zaczyna

Dzięki wszystkim za pomoc. Wykorzystałem podpowiedzi Mykel’a i pirata. Wszystko pięknie śmiga Tylko ten brak metody “like” dla :conditions w standardzie mnie trochę zeźlił, ale sobie poradziłem bez instalowania “conditions_fu”, mam nadzieję że ten plugin niedługo wejdzie do standardu.

?? Przeciez Like masz w standardzie zawsze to jest czesc sql wiec jak moze nie byc?