railsbuilder 0.1.20 → 0.1.21
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data/lib/railsbuilder.rb +25 -6
- data.tar.gz.sig +0 -0
- metadata +2 -2
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c78cc57d3f08d6b09f920163e8aa5a11acd34f46
|
4
|
+
data.tar.gz: bd728be7d7f5af4cfd78fd76087cdef86a38ac49
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7e9ff7a40a74a4f89771776b3376a9eb9694b8551ae31359094f55b0f42a5623dbc78256273d8f44f6558c7bc2f1978087fad794f1828862021f248910037364
|
7
|
+
data.tar.gz: 4d9b022ba547927708552f1fb776f6e9be603c9e4e42ce4a0619e7b87b9dfe08e820ff686b4fa613fda71728b868f353d767e2820eb9339b1ee41789103c8962
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data/lib/railsbuilder.rb
CHANGED
@@ -19,6 +19,8 @@ class RailsBuilder
|
|
19
19
|
|
20
20
|
@config = RXFHelper.read(s)[0].gsub(/^(\s{,5})#/,'\1;') if s
|
21
21
|
@tmp_path = @journal = journal == true ? Dir.tmpdir : journal if journal
|
22
|
+
|
23
|
+
#[:model_class, /(\w+):\s*(string|text|decimal)\s*,?(?<options>.*)/, :class_attribute],
|
22
24
|
|
23
25
|
patterns = [
|
24
26
|
[:root, 'app_path: :app_path', :app_path],
|
@@ -28,7 +30,7 @@ class RailsBuilder
|
|
28
30
|
[:root, ':resource', :resource],
|
29
31
|
[:resource, 'model', :model],
|
30
32
|
[:model, ':class_name', :model_class],
|
31
|
-
[:model_class,
|
33
|
+
[:model_class, /^(?<name>\w+):\s*(?<type>string|text|decimal)\s*,?(?<options>.*)/, :class_attribute],
|
32
34
|
[:resource, /(?:controller \+ views|actionpack:)/, :resource_cv],
|
33
35
|
[:resource_cv, /(\w+)(?:\s+([av]{1,2}))?/, :resource_cv_av],
|
34
36
|
[:resource_cv_av, /(markdown):\s*(.*)/, :renderer],
|
@@ -72,7 +74,7 @@ class RailsBuilder
|
|
72
74
|
@app_path = app_path = doc.element('app_path/@app_path') ||
|
73
75
|
File.join(@parent_path, app)
|
74
76
|
|
75
|
-
puts 'changing
|
77
|
+
puts 'changing directory to ' + app_path.inspect
|
76
78
|
Dir.chdir app_path
|
77
79
|
|
78
80
|
# select the :resource records
|
@@ -159,11 +161,13 @@ class RailsBuilder
|
|
159
161
|
class_name = model.attributes[:class_name]
|
160
162
|
next unless class_name
|
161
163
|
|
162
|
-
attributes = model.xpath('.').map {|x| x.attributes.values}
|
164
|
+
#attributes = model.xpath('.').map {|x| x.attributes.values}
|
165
|
+
attributes = model.xpath('.').map {|x| field_attributes x}
|
163
166
|
|
164
167
|
next if attributes.empty?
|
165
168
|
|
166
|
-
s = class_name + ' ' + attributes
|
169
|
+
s = class_name + ' ' + attributes\
|
170
|
+
.map{|h| "%s: %s" % [h[:name], h[:type]]}.join(' ')
|
167
171
|
|
168
172
|
command = "rails generate model %s" % s
|
169
173
|
puts ":: preparing to execute shell command: `#{command}`"
|
@@ -185,11 +189,12 @@ class RailsBuilder
|
|
185
189
|
class_name = model.attributes[:class_name]
|
186
190
|
next unless class_name
|
187
191
|
|
188
|
-
attributes = model.xpath('.').map {|x| x
|
192
|
+
attributes = model.xpath('.').map {|x| field_attributes x}
|
189
193
|
|
190
194
|
next if attributes.empty?
|
191
195
|
|
192
|
-
s = class_name + ' ' + attributes
|
196
|
+
s = class_name + ' ' + attributes\
|
197
|
+
.map{|h| "%s: %s" % [h[:name], h[:type]]}.join(' ')
|
193
198
|
|
194
199
|
command = "rails generate scaffold %s" % s
|
195
200
|
puts ":: preparing to execute shell command: `#{command}`"
|
@@ -391,6 +396,20 @@ class RailsBuilder
|
|
391
396
|
|
392
397
|
private
|
393
398
|
|
399
|
+
def field_attributes(e)
|
400
|
+
|
401
|
+
h = {
|
402
|
+
name: e.attributes[:name],
|
403
|
+
type: e.attributes[:type],
|
404
|
+
}
|
405
|
+
raw_opt = e.attributes[:options]
|
406
|
+
if raw_opt.length > 0 then
|
407
|
+
h[:options] = raw_opt.split(/\s*,?\s*\b(?=\w+:)/)[1..-1]\
|
408
|
+
.map {|x| x.split(':',2).map(&:lstrip)}
|
409
|
+
end
|
410
|
+
h
|
411
|
+
end
|
412
|
+
|
394
413
|
def parse(patterns, s=nil)
|
395
414
|
|
396
415
|
if s.nil? then
|
data.tar.gz.sig
CHANGED
Binary file
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: railsbuilder
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.21
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- James Robertson
|
@@ -31,7 +31,7 @@ cert_chain:
|
|
31
31
|
bNcCWso1cJhifoTCytPAyf9YVuyU4HjqC3eqx3p00NCg0VoELwMEkyhkpvYOGz2l
|
32
32
|
NSkTRB6yCN+xzQ==
|
33
33
|
-----END CERTIFICATE-----
|
34
|
-
date: 2014-12-
|
34
|
+
date: 2014-12-02 00:00:00.000000000 Z
|
35
35
|
dependencies:
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: rails
|
metadata.gz.sig
CHANGED
Binary file
|