tads6_picolo 1.0.0 → 1.0.1

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e5b20f71425a55ab01c8e966f0fd1b1e92256734b1f50cab91d8051d437678a3
4
- data.tar.gz: cfbc62d25a03754986ccf24e305fb2a8602442af119e1b9c902d0017950f6a7f
3
+ metadata.gz: 2400cfa1a6332d8a0aa2db00165f191093707b560bb33bce3f18b494f8fe0bc1
4
+ data.tar.gz: 9bf9992bc746bffd6c2b5c6200804248ddca69d1245adc31820205793cef61d5
5
5
  SHA512:
6
- metadata.gz: 608877e70badec221f2e775767af16c841adc1a27c580593f7627ab6b3727deb53bda9a1a6372b91ab61395872a6c34eb50e67804063fd40ad276e4a6a8a8eed
7
- data.tar.gz: 2dc8f7e744c00e7d7b89b064fbc8a491bf80c3e5b33c29849ceefef5cd548bb9886be36523b8df49a580239d30c338f4543581d6c9d5ce0c6956a07c8b5fb823
6
+ metadata.gz: e9c0cfe5c5bf2ba125e23c2bab6b749f8a118009ab81e9ddc30837e80d7fe05abdc79387a03cbe7a0436c4f968a201f64c7552595d2e31ba373d8d9f8099731d
7
+ data.tar.gz: 4584a31752c2a5ff5c84a70520a863850638fa84e3314b89bccab95df3f9cc5f32ea6c12e2629179fb1ca467714a71a8d3cc8a545044a00dfbd27ad3449d0276
data/.gitignore CHANGED
@@ -12,3 +12,4 @@
12
12
 
13
13
  *.gem
14
14
  /spec/support/tmp/db/livros/*.yml
15
+ /example/db/carros/*.yml
data/README.md CHANGED
@@ -1,43 +1,102 @@
1
1
  # Tads6Picolo
2
2
 
3
- Welcome to your new gem! In this directory, you'll find the files you need to be able to package up your Ruby library into a gem. Put your Ruby code in the file `lib/tads6_picolo`. To experiment with that code, run `bin/console` for an interactive prompt.
3
+ Este pequeno projeto foi desenvolvido como parte das aulas de Tópicos Especiais em Tecnologia da Informação no Institulo Federal de Mato Grosso do Sul Campus de Naviraí.
4
4
 
5
- TODO: Delete this and the text above, and describe your gem
5
+ A gem tem como objeto demostrar aos estudantes o uso e a aplicação de bibliotecas (gem) para o encapsulamento funcionalidades genéricas que podem ser utilizadas em outros projetos. Outro objetivo atrelado a esta atividade relaciona-se ao conteúdo teórico sobre ORM (Mapeamento Objeto Relacional), os quais foram apresentados em aula e aplicados de forma prática neste trabalho.
6
6
 
7
- ## Installation
7
+ ## Instalação
8
8
 
9
- Add this line to your application's Gemfile:
9
+ Caso use um arquivo Gemfile, adicione o código abaixo:
10
10
 
11
11
  ```ruby
12
12
  gem 'tads6_picolo'
13
13
  ```
14
14
 
15
- And then execute:
15
+ Logo após instale as dependências:
16
16
 
17
- $ bundle
17
+ $ bundle install
18
18
 
19
- Or install it yourself as:
19
+ Ou, instale diretamente executando o código abaixo em seu terminal:
20
20
 
21
21
  $ gem install tads6_picolo
22
22
 
23
- ## Usage
23
+ ## Como utilizar
24
24
 
25
- TODO: Write usage instructions here
25
+ Para utilizar a `gem` deve-se realizar os seguintes passos:
26
26
 
27
- ## Development
27
+ Primeiro crie um novo arquivo e adicione uma classe a qual você deseja persistir seguindo as especificações abaixo:
28
28
 
29
- After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
29
+ ```ruby
30
+ # Require necessário
31
+ require 'tads6_picolo'
32
+
33
+ # Sua classe deve herdar a classe Tads6Picolo::ORM
34
+ class Livro < Tads6Picolo::ORM
35
+ # Toda classe deve conter um :ID obrigatoriamente
36
+ attr_accessor :id, :modelo
37
+
38
+ # O construtor deve seguir o exemplo abaixo
39
+ def initialize(hash)
40
+ @titulo = hash.first[:modelo]
41
+ end
42
+
43
+ # Este método deve ser reescrito obrigatoriamente com o
44
+ # caminho para seu banco de dados 'db/carros'
45
+ def self.path
46
+ 'local/onde/deseja/salvar/os/dados'
47
+ end
48
+ end
49
+ ```
50
+
51
+ ## Passo a Passo
30
52
 
31
- To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
53
+ Crie o diretório com o caminho especificado no método `self.path`
54
+
55
+ ### Criar um novo registro:
56
+ ```ruby
57
+ Carro.criar(
58
+ modelo: 'Fusca 5000'
59
+ )
60
+ ```
32
61
 
33
- ## Contributing
62
+ ### Listar todos os registros:
63
+ ```ruby
64
+ puts Carro.listar
65
+ ```
66
+
67
+ ### Selecionar um registro específico
68
+ ```ruby
69
+ puts Carro.selecionar(1)
70
+ ```
34
71
 
35
- Bug reports and pull requests are welcome on GitHub at https://github.com/luizpicolo/tads6_picolo. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](http://contributor-covenant.org) code of conduct.
72
+ ### Atualizar um registro específico
73
+ ```ruby
74
+ carro = Carro.selecionar(1)
75
+ carro.modelo = "novo modelo"
76
+ Carro.atualizar(carro)
77
+ ```
78
+
79
+ ### Remover um registro específico
80
+ ```ruby
81
+ Carro.remove(1)
82
+ ```
83
+
84
+ ## Importante
85
+
86
+ - O atributo id deve estar contido, contudo ele não deve ser inicializado.
87
+ - O método path obrigatoriamente deve ser reescrito para o local onde você deseja salvar os dados
88
+
89
+ ```ruby
90
+ def self.path
91
+ 'local/onde/deseja/salvar/os/dados'
92
+ end
93
+ ```
36
94
 
37
95
  ## License
38
96
 
39
- The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
97
+ A gem está disponível como código aberto sob os termos do [MIT License](https://opensource.org/licenses/MIT).
40
98
 
41
99
  ## Code of Conduct
42
100
 
43
- Everyone interacting in the Tads6Picolo project’s codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/[USERNAME]/tads6_picolo/blob/master/CODE_OF_CONDUCT.md).
101
+ Espera-se que todos que interagem nas bases de código do projeto Tads6Picolo, rastreadores de problemas, salas de bate-papo e listas de discussão sigam as
102
+ [code of conduct](https://github.com/luizpicolo/tads6_picolo/blob/master/CODE_OF_CONDUCT.md).
@@ -0,0 +1,32 @@
1
+ require 'tads6_picolo'
2
+
3
+ class Carro < Tads6Picolo::ORM
4
+ attr_accessor :id, :modelo
5
+
6
+ def initialize(hash)
7
+ @modelo = hash.first[:modelo]
8
+ end
9
+
10
+ def self.path
11
+ "db/carros"
12
+ end
13
+ end
14
+
15
+ # Criar um novo carro
16
+ # Carro.criar(
17
+ # modelo: 'Fusca'
18
+ # )
19
+
20
+ # Listar todos os carros
21
+ # puts Carro.listar
22
+
23
+ # Selecionar um carro pelo id
24
+ # puts Carro.selecionar(1)
25
+
26
+ # Atualizar um carro existente
27
+ # carro = Carro.selecionar(1)
28
+ # carro.modelo = "novo modelo"
29
+ # Carro.atualizar(carro)
30
+
31
+ # Remover carro
32
+ # Carro.remove(1)
@@ -1,6 +1,7 @@
1
1
  require "tads6_picolo/version"
2
2
  require "tads6_picolo/orm"
3
3
  require 'yaml'
4
+ require 'FileUtils'
4
5
 
5
6
  module Tads6Picolo
6
7
  # Your code goes here...
@@ -1,3 +1,3 @@
1
1
  module Tads6Picolo
2
- VERSION = "1.0.0"
2
+ VERSION = "1.0.1"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tads6_picolo
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Luiz Picolo
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-10-03 00:00:00.000000000 Z
11
+ date: 2018-10-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -70,6 +70,7 @@ files:
70
70
  - Rakefile
71
71
  - bin/console
72
72
  - bin/setup
73
+ - example/example.rb
73
74
  - lib/tads6_picolo.rb
74
75
  - lib/tads6_picolo/orm.rb
75
76
  - lib/tads6_picolo/version.rb