No project description provided
Project description
mongolite
Lite mongodb engine in python
pip install pymongolite
Examples
simple
from pymongolite import MongoClient
with MongoClient(dirpath="~/my_db_dir", database="my_db") as client:
db = client.get_default_database()
collection = db.get_collection("users")
collection.insert_one({"name": "yoyo"})
collection.update_one({"name": "yoyo"}, {"$set": {"age": 20}})
user = collection.find_one({"age": 20})
print(user) # -> {"_id": ObjectId(...), "name": "yoyo", "age": 20}
from pymongolite import MongoClient
client = MongoClient(dirpath="~/my_db_dir", database="my_db")
db = client.get_default_database()
collection = db.get_collection("users")
collection.insert_one({"name": "yoyo"})
collection.update_one({"name": "yoyo"}, {"$set": {"age": 20}})
user = collection.find_one({"age": 20})
print(user) # -> {"_id": ObjectId(...), "name": "yoyo", "age": 20}
client.close()
Indexes
from pymongolite import MongoClient
client = MongoClient(dirpath="~/my_db_dir", database="my_db")
db = client.get_default_database()
collection = db.get_collection("users")
# Make query with name faster
collection.create_index({"name": 1})
collection.insert_one({"name": "yoyo"})
collection.update_one({"name": "yoyo"}, {"$set": {"age": 20}})
user = collection.find_one({"age": 20})
print(user) # -> {"_id": ObjectId(...), "name": "yoyo", "age": 20}
indexes = collection.get_indexes()
print(indexes) # -> [{'id': UUID('8bb4cac8-ae52-4fff-9e69-9f36a99956cd'), 'field': 'age', 'type': 1, 'size': 1}]
client.close()
Support
The goal of this project is to create sqlite version for mongodb
For now the library is supporting:
actions:
- database
- create_database
- get_database
- drop_database
- collection
- create_collection
- get_collection
- drop_collection
- get_collection_names
- index
- create_index
- delete_index
- get_indexes
- document
- insert_many / insert_one
- update_many / update_one
- find / find_one
- replace_many / replace_one
filtering ops:
- field matching
- $eq / $ne
- $gt / $gte
- $lt / $lte
- $not
- $and / $or / $nor
- $exists
- $in / $nin
mutation ops:
- $set
- $unset
- $inc
- $addToSet
- $each
- $push
- $each
- $sort
- $slice
- $pull
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
pymongolite-0.1.7.tar.gz
(16.8 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pymongolite-0.1.7.tar.gz.
File metadata
- Download URL: pymongolite-0.1.7.tar.gz
- Upload date:
- Size: 16.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.12 CPython/3.10.12 Linux/6.5.0-28-generic
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2cdee4d9d361c633a357d44162be298f25e9e66443571810600611b82ad216d3
|
|
| MD5 |
98cc6002c64baa1ab146827681aafdb3
|
|
| BLAKE2b-256 |
bb0fd2c403248fd557a6a5d9b0df5e253bc8f82a5a723256b238580a1fa79e43
|
File details
Details for the file pymongolite-0.1.7-py3-none-any.whl.
File metadata
- Download URL: pymongolite-0.1.7-py3-none-any.whl
- Upload date:
- Size: 25.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.12 CPython/3.10.12 Linux/6.5.0-28-generic
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9eb4ce95f5a64da351c40dc054e8107bbb0468b472f5c312b5d14cee3f3e3bd3
|
|
| MD5 |
83932b4cd4bf854f68c15e8af335334a
|
|
| BLAKE2b-256 |
ffcd63feb330612eff634b3a3469fa63fe7f82940aff1f20b55bbd668cadf4ed
|