Why not just break unless user
inside the block? Not sure if it should be break, next, or return in that context but you get the idea. I always prefer earlier returns for such case. Em 25/01/2013 19:17, "Ngan" <[email protected]> escreveu: > I originally brought this up in: > https://github.com/rails/rails/issues/9067 > > Rails paved the way for Object#tap and Object#try...I'd like to propose > Object#tap_if and its counterpart,Object#tap_unless. > > I've been following 37signals conventions of tapping variables in the > views: > > <% account.owner.tap do |user| %> > ... > <% end %> > > But, I find myself having to do this a lot... > > <% account.owner.tap do |user| %> > <% if user %> > ... > <% end %> > <% end %> > > It would be great if we could do... > > <% account.owner.tap_if(:present?) do |user| %> > ... > <% end %> > > <% account.users.tap_if(:any?) do |user| %> > ... > <% end %> > > The block would only yield if the method evals to true. > Carlos mentioned that you can add an "if account.owner.present?" at the > end... > But there are times when the account.owner (or something else) call is > expensive and you don't want to call it twice. > > Any feedback would be much appreciated. Thanks! > > -- > You received this message because you are subscribed to the Google Groups > "Ruby on Rails: Core" group. > To post to this group, send email to [email protected]. > To unsubscribe from this group, send email to > [email protected]. > Visit this group at http://groups.google.com/group/rubyonrails-core?hl=en. > For more options, visit https://groups.google.com/groups/opt_out. > > > -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Core" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. Visit this group at http://groups.google.com/group/rubyonrails-core?hl=en. For more options, visit https://groups.google.com/groups/opt_out.
