Join GitHub today
GitHub is home to over 20 million developers working together to host and review code, manage projects, and build software together.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
|Failed to load latest commit information.|
ActsAsCurrency ============== There's a problem in ActiveRecord. Let's say you have a field in a table that's supposed to be money, for example: add_column :products, :price, :decimal and you have an entry form on your website for admins to add products. Without even thinking, they will likely type the price with a dollar sign ('$'). If you follow the principal of least surprise, you will need to support this scenario. However, since ActiveRecord interprets the type as a decimal (since that's how it is in the database), you will get a silent fail in which all of your prices are 0! This is because all characters after the first non-number are interpreted as 0. That's where acts_as_currency comes in. Add it to your model and pass in any price fields, and they will all be able to take a '$'. Hope you enjoy! If you have any questions, please feel free to contact me at firstname.lastname@example.org. Install ======= This project is hosted on github. There are a few options for installing it. #1 Using git-rails gem - This is by far the easiest method. Install git-rails by issuing: sudo gem install git-rails (Windows: gem install git-rails) git-rails install git://github.com/faithfulgeek/acts_as_currency.git #2 Using git-clone - This method requires that you have Git installed (might as well do it, it's a great alternative to svn) - Assumes your current working directory is your rails app root cd vendor/plugins git-clone git://github.com/faithfulgeek/acts_as_currency.git acts_as_currency #3 Source Tarball - If you cannot access Git at all, use this link http://github.com/faithfulgeek/acts_as_currency/tarball/master to download the source tarball cd vendor/plugins mkdir acts_as_currency && cd acts_as_currency tar xvcf faithfulgeek-acts-as-currency-master.tar.gz Troubles? Let me know! email@example.com Example ======= class Product < ActiveRecord::Base acts_as_currency :price, :discount_price end For an example of the problem and how acts_as_currency solves it, please see specs/acts_as_currency_spec.rb. If you have rspec installed you can play around with different values and see how it all works. Copyright (c) 2008 Joe Fiorini, released under the MIT license