rakshit 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +7 -0
  2. data/lib/awesome_gem.rb +31 -0
  3. metadata +42 -0
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 64ba0de93730477edfe0bf4b925fd7f956c4ababb94fd653b4489e2ff627a7f8
4
+ data.tar.gz: 2c150d152ceacaf9310dd7280794fe34d48504af8631de06b97a98b88941d020
5
+ SHA512:
6
+ metadata.gz: b5d665efbb257be01b616950a68fbd9d4f930c56cf769a6d8aec0dc44aac6c247a6a9aa48528e6d919cc3d7f6f4205ffca237a9356d005cd4b0d34b3bdd5c7f1
7
+ data.tar.gz: 287fe26ea8061cca56b974bd6b15fb01d4a2c08d271dc522c78a0ed4ab881cfe520d64112d56a1d65dca63243959a2bc4b0e5d447238eaf10d6a1e2fc0157a77
@@ -0,0 +1,31 @@
1
+ module Import
2
+ class << self
3
+ def import(file,model_name,columns)
4
+ case File.extname(file.original_filename)
5
+ when ".csv" then self.import_csv(file,model_name)
6
+ when ".xls" then self.import_xls(file,model_name,columns)
7
+ when ".xlsx" then self.import_xlsx(file,model_name,columns)
8
+ else return
9
+ end
10
+ end
11
+
12
+ def import_xls(file,model_name,columns)
13
+ Roo::Excel.new(file.path).each_with_index(columns) do |a,index|
14
+ next if index.eql?(0)
15
+ model_name.create! a
16
+ end
17
+ end
18
+
19
+ def import_csv(file,model_name)
20
+ CSV.foreach(file.path, headers: true) do |row|
21
+ model_name.create! row.to_hash
22
+ end
23
+ end
24
+ def import_xlsx(file,model_name,columns)
25
+ Roo::Excelx.new(file.path).each_with_index(columns) do |a,index|
26
+ next if index.eql?(0)
27
+ model_name.create! a
28
+ end
29
+ end
30
+ end
31
+ end
metadata ADDED
@@ -0,0 +1,42 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: rakshit
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - rakshit
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2019-02-18 00:00:00.000000000 Z
12
+ dependencies: []
13
+ description:
14
+ email:
15
+ executables: []
16
+ extensions: []
17
+ extra_rdoc_files: []
18
+ files:
19
+ - lib/awesome_gem.rb
20
+ homepage:
21
+ licenses: []
22
+ metadata: {}
23
+ post_install_message:
24
+ rdoc_options: []
25
+ require_paths:
26
+ - lib
27
+ required_ruby_version: !ruby/object:Gem::Requirement
28
+ requirements:
29
+ - - ">="
30
+ - !ruby/object:Gem::Version
31
+ version: '0'
32
+ required_rubygems_version: !ruby/object:Gem::Requirement
33
+ requirements:
34
+ - - ">="
35
+ - !ruby/object:Gem::Version
36
+ version: '0'
37
+ requirements: []
38
+ rubygems_version: 3.0.2
39
+ signing_key:
40
+ specification_version: 4
41
+ summary: my_gem is an upload documnets gem
42
+ test_files: []