activerecord-time-scope
Add various time-related scopes for ActiveRecord!
Installation
Add the activerecord-time-scope gem to your Gemfile.
gem "activerecord-time-scope"
And run bundle install.
Usage
Time
This gem automatically create scopes for time-related columns of your ActiveRecord model such as 'created_at'.
class Foo < ActiveRecord::Base
end
Then,
Foo.created_before 3.days.ago
Foo.created_after 3.days.ago
Foo.created_within 3.days.ago, 3.days.from_now
Any columns with _at, _on, _time and _date postfix are considered as time-related columns.
Time Range
If you want scopes for time ranges, you can create it manually.
class Round < ActiveRecord::Base
create_time_range_scope :run, :start_at, :end_at
end
Then,
Round.run_before 3.days.ago
Round.run_after 3.days.ago
Round.run_within 3.days.ago, 3.days.from_now
will be available for the class!
TODO
- Handle overwrapped cases
- Include equal operators
Contributing
- Fork it
- Create your feature branch (
git checkout -b my-new-feature) - Commit your changes (
git commit -am 'Add some feature') - Push to the branch (
git push origin my-new-feature) - Create new Pull Request
Copyright
Copyright (c) 2014 Daisuke Taniwaki. See LICENSE for details.


