scaffolding 0.3.4 → 0.3.5
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/.gitignore +0 -0
- data/CODE_OF_CONDUCT.md +0 -0
- data/Gemfile +0 -0
- data/LICENSE.txt +0 -0
- data/README.md +0 -0
- data/Rakefile +0 -0
- data/lib/generators/scaffolding_generator.rb +0 -0
- data/lib/scaffolding.rb +7 -1
- data/lib/scaffolding/parser/base.rb +12 -7
- data/lib/scaffolding/railtie.rb +0 -0
- data/lib/scaffolding/version.rb +1 -1
- data/lib/tasks/generators.rake +0 -0
- data/scaffolding.gemspec +0 -0
- metadata +3 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 015002a5a2a74c904f082e2a86920896ac9d9512
|
4
|
+
data.tar.gz: 328166889e9ec9d6b4c84e9be6e009dd40757635
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b058669f4e0b664dcf10c5ae3f2b5047a362f026c65f3c72981670f8a4f8c3f53e62be5efb631bdf2e1ec4f526499aace4f2727b709eb8e5b2cfc047f90c9b06
|
7
|
+
data.tar.gz: 3fe33d0c9410b972ccde9860322c474850d11bba2904abf78724f071cb39b58fd7c4e9d9c39b8660bd8d357db7661be8c07f32ca808ad73951670e325d4faa37
|
data/.gitignore
CHANGED
File without changes
|
data/CODE_OF_CONDUCT.md
CHANGED
File without changes
|
data/Gemfile
CHANGED
File without changes
|
data/LICENSE.txt
CHANGED
File without changes
|
data/README.md
CHANGED
File without changes
|
data/Rakefile
CHANGED
File without changes
|
File without changes
|
data/lib/scaffolding.rb
CHANGED
@@ -19,11 +19,16 @@ module Scaffolding
|
|
19
19
|
end
|
20
20
|
|
21
21
|
def stack
|
22
|
+
beginning_time = Time.now
|
23
|
+
|
22
24
|
@parser = parser
|
23
25
|
@results = @parser.results
|
24
26
|
return if errors
|
25
27
|
generate
|
26
28
|
import_data if migrate_database
|
29
|
+
|
30
|
+
end_time = Time.now
|
31
|
+
puts "#{@parser.source_name} processed in #{(end_time - beginning_time).round(2)} seconds\n\n"
|
27
32
|
end
|
28
33
|
|
29
34
|
def parser
|
@@ -72,7 +77,8 @@ module Scaffolding
|
|
72
77
|
if @import || answer == "y"
|
73
78
|
@results = @parser.import_data
|
74
79
|
return if errors
|
75
|
-
|
80
|
+
puts "\e[32m#{@results[:saved]}\e[0m records saved"
|
81
|
+
puts "\e[31m#{@results[:failed]}\e[0m records failed"
|
76
82
|
end
|
77
83
|
end
|
78
84
|
end
|
@@ -9,7 +9,7 @@ module Scaffolding
|
|
9
9
|
@errors = []
|
10
10
|
return unless @data = valid_data?
|
11
11
|
@col_seperator = col_seperator
|
12
|
-
@source_name =
|
12
|
+
@source_name = clean_source_name
|
13
13
|
@scaffolding = {}
|
14
14
|
@row_number = 0
|
15
15
|
end
|
@@ -19,10 +19,15 @@ module Scaffolding
|
|
19
19
|
end
|
20
20
|
|
21
21
|
def source_name
|
22
|
+
@source_name
|
23
|
+
end
|
24
|
+
|
25
|
+
def clean_source_name
|
22
26
|
name = (@name == "" ? File.basename(@source, ".*") : @name.dup)
|
23
27
|
name.to_s.downcase.split.join.camelize.strip.singularize
|
24
28
|
end
|
25
29
|
|
30
|
+
|
26
31
|
def valid_data?
|
27
32
|
if @source == "" || @source.nil?
|
28
33
|
@errors << "No source selected"
|
@@ -62,19 +67,19 @@ module Scaffolding
|
|
62
67
|
def predict_row(row)
|
63
68
|
row.each do |column, data|
|
64
69
|
data_type = :string
|
65
|
-
data_type = :boolean if ["true", "false"].include?(data.to_s.downcase)
|
66
|
-
data_type = :
|
67
|
-
data_type = :
|
68
|
-
data_type = :datetime if
|
70
|
+
data_type = :boolean if ["true", "false"].include?(data.to_s.downcase)
|
71
|
+
data_type = :time if (data =~ /^([01]?[0-9]|2[0-3])\:[0-5][0-9]$/) == 0
|
72
|
+
data_type = :date if (data =~ /\A(?:0?[1-9]|[1-2]\d|3[01])\/(?:0?[1-9]|[1-2]\d|3[01])\/\d{4}\Z/) == 0
|
73
|
+
data_type = :datetime if (data =~ /^([0,1]?\d{1})\/([0-2]?\d{1}|[3][0,1]{1})\/([1]{1}[9]{1}[9]{1}\d{1}|[2-9]{1}\d{3})\s([0]?\d|1\d|2[0-3]):([0-5]\d):([0-5]\d)$/) == 0
|
69
74
|
data_type = :integer if Integer(data) rescue data_type
|
70
|
-
data_type = :decimal if (data =~ (/[-]?\d*[,]?\d*[.]\d*[%]?$/)) == 0
|
75
|
+
data_type = :decimal if (data =~ (/[-]?\d*[,]?\d*[.]\d*[%]?$/)) == 0
|
71
76
|
@scaffolding[column.to_sym][data_type] += 1 unless data == ""
|
72
77
|
end
|
73
78
|
end
|
74
79
|
|
75
80
|
def save_row(row)
|
76
81
|
model = @source_name.classify.constantize.new(row.except!(:id))
|
77
|
-
model.save ? @saved += 1 : @failed += 1
|
82
|
+
model.save! ? @saved += 1 : @failed += 1
|
78
83
|
end
|
79
84
|
|
80
85
|
def scaffold_rank
|
data/lib/scaffolding/railtie.rb
CHANGED
File without changes
|
data/lib/scaffolding/version.rb
CHANGED
data/lib/tasks/generators.rake
CHANGED
File without changes
|
data/scaffolding.gemspec
CHANGED
File without changes
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: scaffolding
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jordan-deJong
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-10-
|
11
|
+
date: 2015-10-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -83,9 +83,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
83
83
|
version: '0'
|
84
84
|
requirements: []
|
85
85
|
rubyforge_project:
|
86
|
-
rubygems_version: 2.4.
|
86
|
+
rubygems_version: 2.4.7
|
87
87
|
signing_key:
|
88
88
|
specification_version: 4
|
89
89
|
summary: Generate a rails scaffold based on a CSV file.
|
90
90
|
test_files: []
|
91
|
-
has_rdoc:
|