zachinglis / magic_enums

This URL has Read+Write access

magic_enums / README.textile
100644 54 lines (39 sloc) 1.191 kb

MagicEnums

Introduction

RAILS 2.1+ only!

A nice way to have enums in Rails.

Enumerations are easy as integers, however I want to take a text approach to it as soon as rearranging integers can get fussy.

Install

sudo gem sources -a http://gems.github.com
sudo gem install zachinglis-magic_enums

Usage

In your models

  
    enum_column :status, %w(draft private published)    
    # This also supplies you with: Post.status_choices
  

or


enum_column :gender, ['male', 'female']

  1. This also supplies you with: Person.gender_choices

It also supplies you with the handy method:

In your controller

In your controller, you can check the status post_record.status_is_published? or simply by calling person_record.gender to find it out in words, as you would normally.

You can also do find calls (Using named_scope) like so:


Post.status_is_published

or

Person.gender_is_male

Copyright © 2008 Zach Inglis, released under the MIT license