Ruby on Rails - přiřazení class na základě podmínky

ZAJDAN

  • *****
  • 2 078
    • Zobrazit profil
    • E-mail
Ahoj,
mám tabulku a v ní sloupec s checkboxy...cílem je přiřadit každěmu checkbocu class dle toho, jakou hodnotu má sousední buňka ve vedlejším sloupci:

něco jako:

Kód: [Vybrat]
<td class="<%= 'school' if sousedni td == 'school' %>">
nenapadá Vás někoho něco?
díky
« Poslední změna: 22. 11. 2016, 10:37:22 od Petr Krčmář »
Vesele, vesele do továrny dělník běží...vesele, vesele do továrny jde. Vesele se usmívá když mu soustruh zazpívá...vesele, vesele do továrny jde. Vesele si poskočí když se soustruh roztočí ...vesele, vesele do továrny jde.


Jano

Re:Ruby on Rails - přiřazení class na základě podmínky
« Odpověď #1 kdy: 22. 11. 2016, 12:12:01 »
Urob si helper, ktory ti bude prekladat hodnoty v stlpci na styl (class). Ak je to 1:1 tak nemusis.
Potom styl nastavuj nie podla "toho co je v susednej bunke" ale podla atributu objektu ktory vypisujes
do daneho riadku (<td class="<%= o.category %>">

Skus pridat viac z tej sablony, takto sa tazko radi.

ZAJDAN

  • *****
  • 2 078
    • Zobrazit profil
    • E-mail
Re:Ruby on Rails - přiřazení class na základě podmínky
« Odpověď #2 kdy: 22. 11. 2016, 12:51:42 »
(<td class="<%= o.category %>">
to oklasuje <td> ve kterym je ten checkbox...ja chci classovat primo <input> ...davam tedy sablonu at se nam lepe laboruje:
Kód: [Vybrat]
<div id="listFrame">
  <table>
    <tr id="tableListTitle">
      <th>Firest name</th>
      <th>Last Name</th>
      <th>email</th>
      <th>category</th>
      <th></th>
      <th>×</th>
    </tr>
   
  <% @recipients.each do |recipient| %>
    <tr>
      <td><%= recipient.first_name %></td>
      <td><%= recipient.last_name %></td>
      <td><%= recipient.email %></td>
      <td><%= recipient.category %></td>

      <td><%= link_to "edit", edit_recipient_path(recipient) %></td>
      <td><%= check_box_tag "delete_recipient_id[]", recipient.id , :class => recipient.category  %></td>
    </tr>
  <% end %>
  </table>
</div>

napadlo me jeste toto:
Kód: [Vybrat]
      <td><%= check_box_tag "delete_recipient_id[]", recipient.id , :class => recipient.category  %></td>ale nedari se...jeste by bylo mozne tomu dat i jiny html attribut...treba takto jsem zkusil:
Kód: [Vybrat]
<td><%= check_box_tag "delete_recipient_id[]", recipient.id , :data => { :category => recipient.category } %></td>ale ani tak se nepodarilo
Vesele, vesele do továrny dělník běží...vesele, vesele do továrny jde. Vesele se usmívá když mu soustruh zazpívá...vesele, vesele do továrny jde. Vesele si poskočí když se soustruh roztočí ...vesele, vesele do továrny jde.

ZAJDAN

  • *****
  • 2 078
    • Zobrazit profil
    • E-mail
Re:Ruby on Rails - přiřazení class na základě podmínky
« Odpověď #3 kdy: 22. 11. 2016, 13:15:12 »
vyreseno...chybel mi tam parametr false a tridu jsem pak priradil takto:
Kód: [Vybrat]
<td><%= check_box_tag "delete_recipient_id[]", recipient.id, false, class: recipient.category  %></td>
Vesele, vesele do továrny dělník běží...vesele, vesele do továrny jde. Vesele se usmívá když mu soustruh zazpívá...vesele, vesele do továrny jde. Vesele si poskočí když se soustruh roztočí ...vesele, vesele do továrny jde.