# Options\_for\_select order

**URL:** <https://www.ruby-forum.com/t/options-for-select-order/54758>\
**Category:** Rails\
**Created:** [December 29, 2005, 11:49pm UTC](https://www.ruby-forum.com/t/options-for-select-order/54758 "2005-12-29T23:49:46Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![dmarkow](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/bc8723/32.png) [@dmarkow](https://www.ruby-forum.com/u/dmarkow)\
**Post date:** [December 29, 2005, 11:49pm UTC](https://www.ruby-forum.com/t/options-for-select-order/54758/1 "2005-12-29T23:49:46Z")

</div>

* * *

Rails mailing list  
removed\_email\_address@domain.invalid  
[http://lists.rubyonrails.org/mailman/listinfo/rails](http://lists.rubyonrails.org/mailman/listinfo/rails)

---

<div class="post-metadata">

**Author:** ![dmarkow](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/bc8723/32.png) [@dmarkow](https://www.ruby-forum.com/u/dmarkow)\
**Post date:** [December 30, 2005, 12:01am UTC](https://www.ruby-forum.com/t/options-for-select-order/54758/2 "2005-12-30T00:01:59Z")

</div>

I had this problem too. Your values are stored in a hash and hashes  
don’t keep their values in the order you added them. As you’re  
putting the same text it the value of each option as will appear in  
the drop down list you could do this instead:

\<%= select ‘project’, ‘status’, %w{ Active MD HOLD Dead } %\>

Eifion

---

<div class="post-metadata">

**Author:** ![dmarkow](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/bc8723/32.png) [@dmarkow](https://www.ruby-forum.com/u/dmarkow)\
**Post date:** [December 30, 2005, 12:05am UTC](https://www.ruby-forum.com/t/options-for-select-order/54758/3 "2005-12-30T00:05:02Z")

</div>

On Dec 29, 2005, at 2:46 PM, Dylan M. wrote:

> Rails mailing list  
> removed\_email\_address@domain.invalid  
> [http://lists.rubyonrails.org/mailman/listinfo/rails](http://lists.rubyonrails.org/mailman/listinfo/rails)

Dylan-

```
In ruby hashes never gauranteed order. They are essentially randomly

```

ordered. So you will either need to use a .sort method on them if you  
wanted them in alphabetical order or you will need to feed in a  
nested array instead like so:

\<%= select ‘project’, ‘status’, [[“Active” ,“Active”], [“MD”, “MD”],  
[“HOLD” , “HOLD”], [“Dead”, “Dead”] ] %\>

Cheers-  
-Ezra Z.  
Yakima Herald-Republic  
WebMaster  
[http://yakimaherald.com](http://yakimaherald.com)  
509-577-7732  
removed\_email\_address@domain.invalid
