mongo.py 534 Bytes
from abc import ABC, abstractmethod
from pymongo import MongoClient
import os

client = MongoClient(host=os.environ['MONGO_HOST'], port=int(os.environ['MONGO_PORT']))


class Model(ABC):

    @staticmethod
    def get_db():
        return client['shoppe']

    @abstractmethod
    def store(self):
        pass

    @staticmethod
    @abstractmethod
    def get_collection():
        pass

    @staticmethod
    @abstractmethod
    def dict_to_object(dictionary):
        pass

    @abstractmethod
    def to_dict(self):
        pass