introspective_admin 0.0.7 → 0.0.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/introspective_admin/base.rb +21 -6
- data/lib/introspective_admin/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b9a18513acd371f5dc9deeebf46976c7d1c81ceb
|
4
|
+
data.tar.gz: 57621ecaac26a7df9b9b7e14d36b1d95a0dfea66
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1ea656420a6f9e6574a5979d92c89540b43ddccc2e02fd6fe55b844cc36bf75f6f5db76c635803f829993c58dc871c4ddf610eea1f25361f0b96b4ae8ed19bb5
|
7
|
+
data.tar.gz: c757ca3da6dddddbae8ab663a025b376d165aa6d96135ac19180bce29c312b04890d52d23d2539b0e91ec8ce158a3c349e35c9581797bf02552662261c95cde8
|
@@ -45,11 +45,11 @@ module IntrospectiveAdmin
|
|
45
45
|
}+extras
|
46
46
|
end
|
47
47
|
|
48
|
-
def link_record(record)
|
48
|
+
def link_record(dsl, record)
|
49
49
|
link_text = record.try(:name) || record.try(:title) || record.class.to_s
|
50
|
-
link_href = begin
|
50
|
+
link_href = begin dsl.send("admin_#{record.class.name.underscore}_path", record.id) rescue false end
|
51
51
|
if link_href
|
52
|
-
link_to link_text, link_href
|
52
|
+
dsl.link_to link_text, link_href
|
53
53
|
elsif link_text
|
54
54
|
link_text
|
55
55
|
else
|
@@ -91,7 +91,14 @@ module IntrospectiveAdmin
|
|
91
91
|
selectable_column
|
92
92
|
cols = model.columns.map(&:name)-klass.exclude_params
|
93
93
|
cols.each_with_index do |c,i|
|
94
|
-
|
94
|
+
reflection = model.reflections.detect {|k,v| v.foreign_key == c }
|
95
|
+
if reflection
|
96
|
+
column c do |o|
|
97
|
+
klass.link_record(self,o.send(reflection.first))
|
98
|
+
end
|
99
|
+
else
|
100
|
+
column c
|
101
|
+
end
|
95
102
|
end
|
96
103
|
actions
|
97
104
|
end
|
@@ -102,7 +109,15 @@ module IntrospectiveAdmin
|
|
102
109
|
attributes_table do
|
103
110
|
model.columns.each do |c|
|
104
111
|
next if (c.name =~ /password/)
|
105
|
-
|
112
|
+
reflection = model.reflections.detect {|k,v| v.foreign_key == c.name }
|
113
|
+
if reflection
|
114
|
+
row c.name do |o|
|
115
|
+
klass.link_record(self,instance.send(reflection.first))
|
116
|
+
end
|
117
|
+
else
|
118
|
+
row c.name
|
119
|
+
end
|
120
|
+
|
106
121
|
end
|
107
122
|
|
108
123
|
nested_config.each do |assoc,options|
|
@@ -111,7 +126,7 @@ module IntrospectiveAdmin
|
|
111
126
|
options[:columns].each do |c|
|
112
127
|
if options[:class].reflections[c]
|
113
128
|
column( c ) do |r|
|
114
|
-
klass.link_record(r.send(c)) if r
|
129
|
+
klass.link_record(self,r.send(c)) if r
|
115
130
|
end
|
116
131
|
else
|
117
132
|
column c
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: introspective_admin
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.8
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Josh Buermann
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-07-12 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: sass-rails
|