Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJames Lopez <james@jameslopez.es>2017-07-07 19:31:50 +0300
committerJames Lopez <james@jameslopez.es>2017-07-07 19:31:50 +0300
commitcda7cbde03ca5908144df2d37f32e4142de73174 (patch)
tree1b1f732fb16d7fae48da9d62e4d4ab5a4459310b /app/models/concerns/created_at_filterable.rb
parent5e66c6568ba2a528e037eaf9d466cfb489b52891 (diff)
refactor created at filter to use model scopes
Diffstat (limited to 'app/models/concerns/created_at_filterable.rb')
-rw-r--r--app/models/concerns/created_at_filterable.rb12
1 files changed, 12 insertions, 0 deletions
diff --git a/app/models/concerns/created_at_filterable.rb b/app/models/concerns/created_at_filterable.rb
new file mode 100644
index 00000000000..e8a3e41203d
--- /dev/null
+++ b/app/models/concerns/created_at_filterable.rb
@@ -0,0 +1,12 @@
+module CreatedAtFilterable
+ extend ActiveSupport::Concern
+
+ included do
+ scope :created_before, ->(date) { where(scoped_table[:created_at].lteq(date)) }
+ scope :created_after, ->(date) { where(scoped_table[:created_at].gteq(date)) }
+
+ def self.scoped_table
+ arel_table.alias(table_name)
+ end
+ end
+end