# Optionally pass a parameter?

**URL:** <https://www.ruby-forum.com/t/optionally-pass-a-parameter/149310>\
**Category:** Ruby\
**Created:** [September 23, 2008, 1:50pm UTC](https://www.ruby-forum.com/t/optionally-pass-a-parameter/149310 "2008-09-23T13:50:14Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![mrpete](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/ac91a4/32.png) [@mrpete](https://www.ruby-forum.com/u/mrpete)\
**Post date:** [September 23, 2008, 1:50pm UTC](https://www.ruby-forum.com/t/optionally-pass-a-parameter/149310/1 "2008-09-23T13:50:14Z")

</div>

In general, how do you optionally pass an optional qualifier to a Ruby  
def?

For example, for some model in Rails, like this:

MyDBClass.find(:all, …

How do I optionally add a condition? This generates a syntax error:

some\_test ? :conditions =\> “id=100” : nil,

I guess it doesn’t like that I only want to add the :conditions  
occasionally. What is the Ruby best practice or idiom for this?

Pete

---

<div class="post-metadata">

**Author:** ![mrpete](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/ac91a4/32.png) [@mrpete](https://www.ruby-forum.com/u/mrpete)\
**Post date:** [September 23, 2008, 1:57pm UTC](https://www.ruby-forum.com/t/optionally-pass-a-parameter/149310/2 "2008-09-23T13:57:31Z")

</div>

> some\_test ? :conditions =\> “id=100” : nil

Try turning it inside out:

:conditions =\> (some\_test ? “id=100” : nil)

or:

:conditions =\> (some\_test && “id=100”)

Not too sure about what the second one will cause Rails to do if  
some\_test  
is false rather than nil, but worth a try.
