Skip to main content

Pydantic Async Mongo Document

Project description

Pydantic Mongo Document

pydantic_mongo_document is a Python library that provides a base class for creating MongoDB documents using Pydantic models.

Installation

Install the package using pip or poetry.

Using pip

pip install pydantic_mongo_document

Using poetry

poetry add pydantic_mongo_document

Usage To use pydantic_mongo_document, you need to create a Pydantic model that represents your MongoDB document and inherit from the MongoDocument class provided by the library. Here's an example:

from pydantic_mongo_document import Document

class User(Document):
    __collection__ = "users"
    __database__ = "production"

    name: str
    email: str

In this example, we define a User Pydantic Document model with two fields (name and email) and
specifies the MongoDB collection name (users) and database name (production) using the __collection__ and __database__ class attributes.

from pydantic_mongo_document import Document


# Set the MongoDB replica configuration
Document.set_replica_config({"localhost": "mongodb://localhost:27017"})


class User(Document):
    __replica__ = "localhost"
    __collection__ = "users"
    __database__ = "production"

    name: str
    email: str


async def create_user():
    user = User(name="John", email="john@example.com")

    await user.insert()

    user = await User.one(add_query={"name": "John"})
    print(user)  # User(id=ObjectId("64fc59cf6410868c9a40644b"), name="John", email="john@example")

In this example, we created new User in database. We then used the User.one method to retrieve the user from the database.

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.

License

MIT

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

pydantic_mongo_document-0.2.3.6.tar.gz (8.0 kB view details)

Uploaded Source

Built Distribution

pydantic_mongo_document-0.2.3.6-py3-none-any.whl (10.8 kB view details)

Uploaded Python 3

File details

Details for the file pydantic_mongo_document-0.2.3.6.tar.gz.

File metadata

  • Download URL: pydantic_mongo_document-0.2.3.6.tar.gz
  • Upload date:
  • Size: 8.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.2 CPython/3.11.1 Darwin/24.0.0

File hashes

Hashes for pydantic_mongo_document-0.2.3.6.tar.gz
Algorithm Hash digest
SHA256 0f0456ddf2e2b92d57763d7be5a6bd2ecdc4be61fc3890dec83a5a61e1b57c36
MD5 2a45819e7ea7526e74cbd955b2bab9d0
BLAKE2b-256 4e15b18aa8733f4d263b3da957df5645ac1e58c0d92082bd5d2d1b93c6e6024a

See more details on using hashes here.

File details

Details for the file pydantic_mongo_document-0.2.3.6-py3-none-any.whl.

File metadata

File hashes

Hashes for pydantic_mongo_document-0.2.3.6-py3-none-any.whl
Algorithm Hash digest
SHA256 b0b41e5b5d7be9c1e74574528f8aad6a4a66f9189a2b4370e53e4baad6f227bb
MD5 435b5818299a8f1620d6c2b74bb58c7e
BLAKE2b-256 d9c5d3bbb61e37c26d94a736aacc3ffb68d27d21a381c7d18ad9e4eb675de40e

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