Skip to main content

Pydbm is a more pythonic way to use dbm.

Project description

Pydbm

Pydbm is a more pythonic way to use dbm.

It provides a fast, simple, and convenient facility for your small-scale Python projects that need a database.

pre-commit test build-docs publish-package-on-pypi

Pypi PyPI - Python Version Downloads License

Forks Issues Stars

Codecov Contributors Last Commit

Installation

Pydbm requires Python 3.8+ and can be easily installed using most common Python packaging tools. We recommend installing the latest stable release from PyPI with pip:

$ pip install pythonic-dbm

Pydbm is a database management system that uses the dbm standard library from Python to provide interfaces to Unix databases in a pythonic way. It is designed for small-scale projects and is a light database, meaning it is not as feature-rich or powerful as other types of databases, such as relational databases.

Pydbm is particularly useful for applications that need to store and retrieve simple data structures quickly, and is well-suited for developers working on small-scale projects that do not require the full functionality of a more complex database management system.

Pydbm is also an object-relational mapper (ORM), which allows developers to work with their database using objects and classes rather than raw commands. This can make it easier to manage and interact with the database in their application in a more pythonic way.

Here is a quick example;

from pydbm import DbmModel

__all__ = (
    "UserModel",
)


class UserModel(DbmModel):
    name: str
    surname: str
    age: int
    username: str

    class Config:
        unique_together = ("username", )

    def get_fullname(self) -> str:
        return f"{self.name} {self.surname}"


user = UserModel(name="Hakan", surname="Celik", age=26, username="hakancelik")
user.save()

hakan_user = UserModel.objects.get(id=user.id)

assert hakan_user.name == "Hakan"
assert hakan_user.surname == "Celik"
assert hakan_user.age == 26
assert hakan_user.username == "hakancelik"

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

pythonic_dbm-0.7.0.tar.gz (73.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pythonic_dbm-0.7.0-py3-none-any.whl (31.8 kB view details)

Uploaded Python 3

File details

Details for the file pythonic_dbm-0.7.0.tar.gz.

File metadata

  • Download URL: pythonic_dbm-0.7.0.tar.gz
  • Upload date:
  • Size: 73.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pythonic_dbm-0.7.0.tar.gz
Algorithm Hash digest
SHA256 4c41be8398f56d3aa9639235be509e3389a67578b17240989801ffa3956e543c
MD5 b31b5ce8d3eb8a679e47a689e998ad3e
BLAKE2b-256 38d31520fa23bf7bb193fcc923b016f667af2b3159e92735dc78137205a65da8

See more details on using hashes here.

File details

Details for the file pythonic_dbm-0.7.0-py3-none-any.whl.

File metadata

  • Download URL: pythonic_dbm-0.7.0-py3-none-any.whl
  • Upload date:
  • Size: 31.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pythonic_dbm-0.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 db3e4cafe20ebb406d6658761e0e2686795972f4b19a86cdc2ddf1665e5d433b
MD5 a8487cdaaf9293356a9b453b5c600e04
BLAKE2b-256 cf2eba1ad2c09a257d1d9be411ce1ee9715241c457a3f9a3906d52c5c1057de8

See more details on using hashes here.

Supported by

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