Skip to main content

access mongodb with handy utilities and fun

Project description

joker-mongodb

Access mongodb with handy utilities and fun.

Connnect to multiple mongo servers with MongoInterface

Example:

GlobalInterface is defined in example/environ.py as:

from functools import cached_property

import volkanic
from joker.mongodb.interfaces import MongoInterface


class GlobalInterface(volkanic.GlobalInterface):
    package_name = 'example'
    default_config = {
        "mongoi": {
            "local": {},
            "remote": {
                "host": "192.168.22.122",
                "port": 27017
            }
        }
    }

    @cached_property
    def mongoi(self) -> MongoInterface:
        return MongoInterface.from_config(self.conf['mongoi'])

If a configuration file is found at one of the follow locations:

  • Under your project directory in a development enviornment
  • ~/.example/config.json5
  • /etc/example/config.json5
  • /example/config.json5

it will override GlobalInterface.default_config.

Usage in code example/application.py:

from bson import ObjectId
# noinspection PyUnresolvedReferences,PyPackageRequirements
from example.environ import GlobalInterface

gi = GlobalInterface()


def get_product(product_oid):
    coll = gi.mongoi.get_coll('remote', 'example', 'products')
    return coll.find_one({'_id': ObjectId(product_oid)})


if __name__ == '__main__':
    print(get_product('60f231605e0a4ea3c6c31c13'))

Recent changes

version 0.1.4

  • add MongoDocumentSchemator and MongoFieldSchemator

version 0.1.3

  • add TransactionHelper

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

joker-mongodb-0.3.2.tar.gz (30.0 kB view details)

Uploaded Source

File details

Details for the file joker-mongodb-0.3.2.tar.gz.

File metadata

  • Download URL: joker-mongodb-0.3.2.tar.gz
  • Upload date:
  • Size: 30.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.14

File hashes

Hashes for joker-mongodb-0.3.2.tar.gz
Algorithm Hash digest
SHA256 4dce93ab7223d06f828563044a56b3d5015d61c948616d6e7bc46db414c92933
MD5 f6aa104b1e399b50ad951757ca216026
BLAKE2b-256 b9b4951272264ee5d97e807b4b8a592975ff58cf35653a06cc612de643c4ead7

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page