tads6_picolo 1.0.0 → 1.0.1

Sign up to get free protection for your applications and to get access to all the features.
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