Exemplo n.º 1
0
 def __init__(self):
     serialization = SerializationMiddleware()
     serialization.register_serializer(DateTimeSerializer(), 'TinyDate')
     self.connection = TinyDB(DBConfig.PATH_TO_DB, storage=serialization)
Exemplo n.º 2
0
import classes as cl
from tinydb import *
from tinydb_serialization import SerializationMiddleware
from time import gmtime, strftime
import matplotlib.pyplot as plt; plt.rcdefaults()
import numpy as np
import matplotlib.pyplot as plt

serialization = SerializationMiddleware()
serialization.register_serializer(cl.DateTimeSerializer(), 'TinyDate')
db = TinyDB("DB.json", storage = serialization)


Card = Query()
History = Query()
cards = db.table('cards')
history = db.table('history')
categories = db.table('categories')
default_cat = ["No category", "Transfer"]


def empty_cards_database():
    if not cards.all():
        return True
    else:
        return False


def empty_categories_database():
    if not categories.all():
        return True
Exemplo n.º 3
0
    def __init__(self, database_file):
        serialization = SerializationMiddleware()
        serialization.register_serializer(DateTimeSerializer(),
                                          'ArrowDateTime')

        self.db = TinyDB(database_file, storage=serialization)
Exemplo n.º 4
0
 def _storage(self):
     serialization = SerializationMiddleware()
     serialization.register_serializer(DateTimeSerializer(), 'TinyDate')
     # TODO: Read custom serializers from settings and extensions
     return serialization
Exemplo n.º 5
0
 def _storage(self):
     serialization = SerializationMiddleware()
     serialization.register_serializer(DateTimeSerializer(), 'TinyDate')
     # register other custom serializers
     return serialization
Exemplo n.º 6
0
def _storage():
    _serializer = SerializationMiddleware()
    _serializer.register_serializer(DatetimeSerializer(), "DatetimeSerializer")
    return _serializer
Exemplo n.º 7
0
def main():
    # Our database
    dbpath = 't1.json'
    serializer = SerializationMiddleware(JSONStorage)
    serializer.register_serializer(DateTimeSerializer(), 'TinyDate')

    # Usando tinykit
    #dbk = Database(dbpath, storage=serializer)
    #dbk.table_class = SmartCacheTable
    dbk = Database(dbpath)

    # Usando tinyDb puro
    db = TinyDB(dbpath, storage=serializer)
    db.table_class = SmartCacheTable

    class ConfigModel(BaseModel):
        __tablename__ = "config"

        name = fields.StringField()
        key = fields.StringField()

        # this attribute wont be saved because it's not a field
        address = "this attribute will not be saved"

        class Meta:
            database = dbk

    model = ConfigModel()
    model.name = "original"
    model.key = "test"
    model.created_at = datetime.utcnow()

    # TinyDb puro
    #table = db.table(model.__tablename__)
    #model.tinsert()

    # Tinydb com tinykit
    table = dbk.table(model.__tablename__)
    model.insert()

    allrec = table.all()
    qlist = []
    qlist = [ConfigModel(eid=row.eid, **row) for row in allrec]
    for rec in qlist:
        print("Rec: ", rec.id, rec.key, rec.name)

    # tinydbk - create model from table's data
    row = table.get(dbk.where("key") == "test")
    new_model = ConfigModel(eid=row.eid, **row)

    print(new_model.id)
    print(new_model.name)
    print(new_model.key)
    print(new_model.created_at)
    print(new_model.address)
    print(new_model.location)
    print(new_model.created_at_datetime())

    new_model.key = 'dev'
    new_model.save()
    print(new_model.id)
    print(new_model.name)
    print(new_model.key)
    print(new_model.created_at)
    print(new_model.address)
    print(new_model.location)
    print(new_model.created_at_datetime())