tablets 0.3.8 → 0.3.9

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b2b9c6ae56d77fa44950ef647ae6492ad50803f4
4
- data.tar.gz: 1bed78d14eee5c42e294b1f3103ddcb6de070a3e
3
+ metadata.gz: 238d1476e9dd86d9dd4daffeb15e11db1e4526a4
4
+ data.tar.gz: 7bd06119e0d5593f011b1ea7aa9f41def63170ec
5
5
  SHA512:
6
- metadata.gz: a534d1816ca669da1c8636d7eb500c03ff913ff19e2c0e1450fbfaee3e8c2a86e7b384bef9973fe1b0b6aa19364dc19478dfd28f0210159b617fab1b3399183c
7
- data.tar.gz: faf361c98793fdda26042efc0e5c9aae4d27c7ee8da22abc5d46916eca73b34dfc4407ed6a0d747a28a57023660c6a74a3f9a0f244e8d198dcd54f51fb2e7274
6
+ metadata.gz: e292ad1d238eb6d39cc70db0754569467a6beb30b6268159f66917043daece16eb79fdf1ba177e1569e503267f2ea75a7ddf864ee357c0fb49a6e3386667073a
7
+ data.tar.gz: 6de1bee9d84c095e9ddbd9f816eade30fb4c9f6ee15001dda0d00a8f042f808bac2e5896808b7cf4801700a5bef6218978f22ac7b282a0781bb4ae8eae50e848
data/lib/tablets/data.rb CHANGED
@@ -23,15 +23,20 @@ module Tablets
23
23
 
24
24
  private
25
25
 
26
- attr_reader :params, :tablet
26
+ attr_reader :params, :tablet, :controller
27
27
 
28
- # Initializes query with concretized relation.
28
+ # Initializes query with concrete relation.
29
29
  def query
30
- @query ||= Tablets::Data::Query.new(tablet.relation(relation_params),
30
+ @query ||= Tablets::Data::Query.new(concrete_relation,
31
31
  params,
32
32
  tablet.columns)
33
33
  end
34
34
 
35
+ # Relation with concretized parameters.
36
+ def concrete_relation
37
+ tablet.relation(relation_params, controller)
38
+ end
39
+
35
40
  # Relation params. Empty hash by default.
36
41
  def relation_params
37
42
  params[:params] || {}
@@ -43,11 +43,13 @@ module Tablets
43
43
 
44
44
  # Returns database relation to fetch data.
45
45
  # By default tries to deduct class from tablet name.
46
- def relation(params = {})
46
+ def relation(params = {}, controller = nil)
47
47
  if defined? @name.singularize.camelize.constantize
48
- call(:relation, params) { @name.camelize.constantize.where(nil) }
48
+ call(:relation, params, controller) do
49
+ @name.camelize.constantize.where(nil)
50
+ end
49
51
  else
50
- call(:relation, params)
52
+ call(:relation, params, controller)
51
53
  end
52
54
  end
53
55
 
@@ -3,7 +3,7 @@ module Tablets
3
3
  module Version
4
4
  MAJOR = 0
5
5
  MINOR = 3
6
- TINY = 8
6
+ TINY = 9
7
7
  PRE = nil
8
8
 
9
9
  class << self
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tablets
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.8
4
+ version: 0.3.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Yevhen Shemet
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-08-25 00:00:00.000000000 Z
11
+ date: 2015-09-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails