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.


Reply via email to