You're absolutely right Colin, thanks. I'm not that familiar with that simplified syntax of if/else statements, so I learned quite a bit from this exchange!
On Fri, Feb 20, 2015 at 3:57 AM, Colin Law <clan...@gmail.com> wrote: > On 20 February 2015 at 00:01, TTambe <tambe...@gmail.com> wrote: > > I actually ended up doing this which worked: > > > > <% last_artist ||= nil %> > > > > <table id="artist"> > > <tr> > > <th>Artist</th> > > <th></th> > > <th>Album</th> > > </tr> > > <% @pin_albums.each do |pin| %> > > <% if last_artist != pin.artist %> > > <tr> > > <td><%= pin.artist %></td> > > <td><%= link_to image_tag(pin.image), pin %></td> > > <td><%= link_to pin.album, copy_pin_path(pin) %></td> > > </tr> > > <% else %> > > <tr> > > <td></td> > > <td><%= link_to image_tag(pin.image), pin %></td> > > <td><%= link_to pin.album, copy_pin_path(pin) %></td> > > </tr> > > <% end %> > > <% last_artist = pin.artist %> > > <% end %> > > You are right in that the key was to initialise last_artist at an > appropriate scope. > There are an awful lot of repeated lines there, Suppose you wanted to > change the detail of the contents of the last cell in each row, you > would have to change it in two places. You should put the if > statement round just the first cell not round the whole row. so for > that cell use something like > <td> > <%= (last_artist == pin.artist) ? '' : pin.artist %> > </td> > Or use an if statement inside the <td> </td> if you prefer. That is > two single quotes in the line above of course. > > Colin > > -- > You received this message because you are subscribed to the Google Groups > "Ruby on Rails: Talk" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to rubyonrails-talk+unsubscr...@googlegroups.com. > To post to this group, send email to rubyonrails-talk@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/rubyonrails-talk/CAL%3D0gLuBuJUBego%3Dq_5jDGaBRCA0rVHRwHdZDwjKrg665Hbqiw%40mail.gmail.com > . > For more options, visit https://groups.google.com/d/optout. > -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To unsubscribe from this group and stop receiving emails from it, send an email to rubyonrails-talk+unsubscr...@googlegroups.com. To post to this group, send email to rubyonrails-talk@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/rubyonrails-talk/CAEdg5qRS_sRxs0v58fo%3DFhfcWkukF0xEQfo-ALEgSc3kjbkAdw%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.