ransack_ui 0.1.0 → 0.1.1
Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,43 @@
|
|
1
|
+
module RansackUI
|
2
|
+
module Adapters
|
3
|
+
module ActiveRecord
|
4
|
+
module Base
|
5
|
+
|
6
|
+
def self.extended(base)
|
7
|
+
base.class_eval do
|
8
|
+
class_attribute :_ransackable_associations
|
9
|
+
class_attribute :_ransack_can_autocomplete
|
10
|
+
self._ransackable_associations ||= []
|
11
|
+
self._ransack_can_autocomplete = false
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
def has_ransackable_associations(associations)
|
16
|
+
self._ransackable_associations = associations
|
17
|
+
end
|
18
|
+
|
19
|
+
def ransack_can_autocomplete
|
20
|
+
self._ransack_can_autocomplete = true
|
21
|
+
end
|
22
|
+
|
23
|
+
# Return array of attributes with [name, type]
|
24
|
+
# (Default to :string type for ransackers)
|
25
|
+
def ransackable_attributes(auth_object = nil)
|
26
|
+
columns.map{|c| [c.name, c.type] } +
|
27
|
+
_ransackers.keys.map {|k| [k, :string] }
|
28
|
+
end
|
29
|
+
|
30
|
+
def ransackable_associations(auth_object = nil)
|
31
|
+
all_associations = reflect_on_all_associations.map {|a| a.name.to_s}
|
32
|
+
if self._ransackable_associations.any?
|
33
|
+
# Return intersection of all associations, and associations defined on the model
|
34
|
+
all_associations & self._ransackable_associations
|
35
|
+
else
|
36
|
+
all_associations
|
37
|
+
end
|
38
|
+
end
|
39
|
+
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
data/lib/ransack_ui/version.rb
CHANGED
data/lib/ransack_ui.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ransack_ui
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.1
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -51,6 +51,8 @@ files:
|
|
51
51
|
- config/locales/en.yml
|
52
52
|
- lib/core_ext/enumerable.rb
|
53
53
|
- lib/ransack_ui.rb
|
54
|
+
- lib/ransack_ui/adapters/active_record.rb
|
55
|
+
- lib/ransack_ui/adapters/active_record/base.rb
|
54
56
|
- lib/ransack_ui/controller_helpers.rb
|
55
57
|
- lib/ransack_ui/rails/engine.rb
|
56
58
|
- lib/ransack_ui/ransack_overrides/adapters/active_record/base.rb
|
@@ -76,7 +78,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
76
78
|
version: '0'
|
77
79
|
segments:
|
78
80
|
- 0
|
79
|
-
hash:
|
81
|
+
hash: 4121058446374876496
|
80
82
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
81
83
|
none: false
|
82
84
|
requirements:
|
@@ -85,7 +87,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
85
87
|
version: '0'
|
86
88
|
segments:
|
87
89
|
- 0
|
88
|
-
hash:
|
90
|
+
hash: 4121058446374876496
|
89
91
|
requirements: []
|
90
92
|
rubyforge_project:
|
91
93
|
rubygems_version: 1.8.24
|