-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmodels.py
56 lines (43 loc) · 1.59 KB
/
models.py
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
# coding: utf-8
from sqlalchemy import Column, Float, Integer, MetaData, Table, Text
from sqlalchemy.schema import FetchedValue
from sqlalchemy.sql.sqltypes import NullType
from sqlalchemy.ext.declarative import declarative_base
from marshmallow import Schema, fields
Base = declarative_base()
metadata = Base.metadata
class Jogadore(Base):
__tablename__ = 'jogadores'
id = Column(Integer, primary_key=True)
caixa = Column(Float, nullable=False)
posicao = Column(Integer, nullable=False)
perfil = Column(Text(255), nullable=False)
class JogadoreSchema(Schema):
class Meta:
ordered = False
fields = ('id', 'caixa', 'posicao','perfil')
jogador_json = JogadoreSchema()
jogadores_json = JogadoreSchema(many=True)
class Resultado(Base):
__tablename__ = 'resultados'
id = Column(Integer, primary_key=True)
rodada = Column(Integer, nullable=False)
vencedor = Column(Integer, nullable=False)
perfil = Column(Text, nullable=False)
timeout = Column(Integer, nullable=False, server_default=FetchedValue())
teste = Column(Integer, nullable=False)
class Tabuleiros(Base):
__tablename__ = 'tabuleiro'
id = Column(Integer, primary_key=True)
nome = Column(Text)
tipo = Column(Text)
valor_venda = Column(Float)
valor_aluguel = Column(Float)
proprietario = Column(Text)
tag = Column(Text)
class TabuleirosSchema(Schema):
class Meta:
ordered = True
fields = ('id','nome', 'tipo', 'valor_venda', 'valor_aluguel', 'proprietario', 'tag')
tabuleiro_json = TabuleirosSchema()
tabuleiros_json = TabuleirosSchema(many=True)