-
Notifications
You must be signed in to change notification settings - Fork 0
/
datamodel.rb
56 lines (43 loc) · 1.67 KB
/
datamodel.rb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#modelo de dados baseados em ORC, para utilizar com a BIG TABLE
#A Big Table é uma base de dados distribuída feita pelos engenheiros
#do google e tem por objetivo manipular quantidades enormes de dados.
#autor: tadeu gaudio anestesya.posterous.com
#email: [email protected]
require 'rubygems'
require 'dm-core'
#Configura a gem DataMapper para usar o sistema de armazenamendo App Engine
DataMapper::Logger.new($stdout, :debug)
DataMapper.setup(:default, "appengine://auto")
class Planilha
include DataMapper::Resource
property :planilha_id, String
property :plainlha_uri, String
property :planilha_conteudo, Text
end#fim da classe Planilha
class Usuario
include DataMapper::Resource
property :user_id, Integer
property :user_name, String
property :user_email, String
property :user_twitter, String
end#fim da classe usuario
class Partida
include DataMapper::Resource
has n, :tempos #associação 1 para muitas partidas (one-to-many)
property :partida_id, Integer
property :partida_dia, Date
property :partida_hora, DateTime
property :partida_tima_a, String
property :partida_time_b, String
property :partida_tempos, String
property :partida_duracao, Time
property :partida_resultado, String
end#fim da classe partida
class Tempos
include DataMapper:Resource
belongs_to :partida #significa que pode-se ter varias clases dessa na partida
property :tempos_id, String #essa chave deve ser formada
#partida_id.partida_tima_a.partida_time_b.id_deste_tempo
property :tempos_duracao, Time
end#fim da classe tempos
DataMapper.finalize