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.

Reply via email to