Skip to main content

Models Manager

Project description

Models Manager

Library for creating object models and for interacting with the database. Provides simple interface for that. For databases only PostgreSQL supported from the box.

For databases enabled support for multiple connections

Simple example:

from models_manager.manager.field import Field
from models_manager.manager.model import Model


class User(Model):
    email = Field(default='some@gmail.com', json='email', max_length=255)
    username = Field(default='some', json='username', null=True, max_length=255)
    password = Field(default='other', json='password', max_length=255)


json = User.manager.to_json
print(json)

json_negative = User.manager.to_negative_json()
print(json_negative)

user_schema = User.manager.to_schema
print(user_schema)

user_array_schema = User.manager.to_array_schema
print(user_array_schema)  

Working with databases:

To work with database, we have to define settings. So, somewhere in your settings.py:

import models_manager.settings

models_manager.settings.DATABASE = {
    'host': 'some',
    'port': 5432,
    'user': 'user',
    'password': 'password',
}

models_manager.settings.DATABASES = ['some', 'other', 'another']
models_manager.settings.DATABASE_LOGGING = True

Then in your model you have to override database and identity attributes

from models_manager.manager.field import Field
from models_manager.manager.model import Model


class User(Model):
    database = 'some'
    identity = 'id'
    
    id = Field(default=1, json='id', category=int)
    email = Field(default='some@gmail.com', json='email', max_length=255)
    username = Field(default='some', json='username', null=True, max_length=255)
    password = Field(default='other', json='password', max_length=255)

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

models_manager-0.3.7.tar.gz (16.3 kB view details)

Uploaded Source

File details

Details for the file models_manager-0.3.7.tar.gz.

File metadata

  • Download URL: models_manager-0.3.7.tar.gz
  • Upload date:
  • Size: 16.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.8.2 requests/2.27.1 setuptools/60.10.0 requests-toolbelt/0.9.1 tqdm/4.63.0 CPython/3.8.2

File hashes

Hashes for models_manager-0.3.7.tar.gz
Algorithm Hash digest
SHA256 a295ff5442e008a1152fadf9435f0a3e36146e8ed2f2129dd87bc2958c467bec
MD5 04fa86b223f65bf822e8a358549573c5
BLAKE2b-256 05f6fb7836754736b97c6a55baa3195ce5108d967abf6a1027206018d266d049

See more details on using hashes here.

Supported by

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