# Way to mark record as main?

**URL:** <https://www.ruby-forum.com/t/way-to-mark-record-as-main/104248>\
**Category:** Rails\
**Created:** [May 15, 2007, 10:47pm UTC](https://www.ruby-forum.com/t/way-to-mark-record-as-main/104248 "2007-05-15T22:47:59Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![benjohnson](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/b/3ec8ea/32.png) [@benjohnson](https://www.ruby-forum.com/u/benjohnson)\
**Post date:** [May 15, 2007, 10:47pm UTC](https://www.ruby-forum.com/t/way-to-mark-record-as-main/104248/1 "2007-05-15T22:47:59Z")

</div>

I was curious if there was a built in feature in ActiveRecord or a  
plugin, but I basically have a database for phone numbers. I want a user  
to be able to make a phone number as main. There can only be one phone  
number marked as main at all times. Is there something for this?

Thanks for your help.

---

<div class="post-metadata">

**Author:** ![benjohnson](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/b/3ec8ea/32.png) [@benjohnson](https://www.ruby-forum.com/u/benjohnson)\
**Post date:** [May 15, 2007, 11:37pm UTC](https://www.ruby-forum.com/t/way-to-mark-record-as-main/104248/2 "2007-05-15T23:37:56Z")

</div>

I would use acts\_as\_list and add a method to return the phone at  
position 0 (or 1, depending on if acts\_as\_list is zero or one based).  
Maybe call the method main\_phone.

Now to make a phone number the “main” one just set it position to 1  
using acts\_as\_list methods.

On May 15, 4:47 pm, Ben J. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)

---

<div class="post-metadata">

**Author:** ![benjohnson](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/b/3ec8ea/32.png) [@benjohnson](https://www.ruby-forum.com/u/benjohnson)\
**Post date:** [May 15, 2007, 11:39pm UTC](https://www.ruby-forum.com/t/way-to-mark-record-as-main/104248/3 "2007-05-15T23:39:56Z")

</div>

Oops. Sorry mixing my zero one based. I mean set it to position 0 of  
acts\_as\_list is zero based.

---

<div class="post-metadata">

**Author:** ![benjohnson](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/b/3ec8ea/32.png) [@benjohnson](https://www.ruby-forum.com/u/benjohnson)\
**Post date:** [May 15, 2007, 11:40pm UTC](https://www.ruby-forum.com/t/way-to-mark-record-as-main/104248/4 "2007-05-15T23:40:56Z")

</div>

vpim might help out…

On May 15, 2007, at 2:37 PM, Robert W. wrote:

> > I was curious if there was a built in feature in ActiveRecord or a
> 
> >

Steve R.  
removed\_email\_address@domain.invalid  
[http://www.calicowebdev.com](http://www.calicowebdev.com)

---

<div class="post-metadata">

**Author:** ![benjohnson](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/b/3ec8ea/32.png) [@benjohnson](https://www.ruby-forum.com/u/benjohnson)\
**Post date:** [May 15, 2007, 11:42pm UTC](https://www.ruby-forum.com/t/way-to-mark-record-as-main/104248/5 "2007-05-15T23:42:56Z")

</div>

A bit more specific:

parent.children[2].move\_to\_top

and it is zero based by the way.
