Variable orm with django admin support
Project description
varorm - variables orm with django admin support
v0.1 - Basic models and Django admin support
v0.1.1 - Add groups access to variables and verbose_name for django admin, setup key on init of model
v0.1.2 - Add MongoStorage
v0.1.4 - New storage in django model
v0.1.5 - Fixed datetime and date fields, added init_load param and update method
TODO - refactor django widgets, better type-hints
Documentation
from varorm.models import Model
from varorm import fields
from varorm.storage import JsonStorage
from varorm.exceptions import VarDoesNotExistException
storage = JsonStorage(path="test.json")
class TestModel(Model):
a = fields.IntegerField(default=1)
b = fields.CharField(null=True)
c = fields.FloatField()
class Meta: # optional
key = 'test' # key in storage for current model
TestModel.connect(storage)
print(TestModel().a) # >> 1
print(TestModel().b) # >> None
print(TestModel().c) # >> VarDoesNotExistException
TestModel().a = 5
print(TestModel().a) # >> 5
# Also u can change key in time of using model:
print(TestModel(key='test2').a) # >> 1
storage.save() # for file base storages
Django-Documentation
variables.py in your app(the same where models.py)
from varorm.models import Model
from varorm import fields
class TestModel(Model):
a = fields.IntegerField(default=1)
b = fields.CharField(null=True)
c = fields.FloatField(verbose_name="Test C")
class Meta: # optional
key = 'test' # key in storage for current model
groups = ['TestGroups'] # groups who have access to this model, __all__ for access to everyone
verbose_name = 'TestNameOfModel' # the name of model in django admin
settings.py
INSTALLED_APPS = [
...
"varorm.dj",
...
]
VARORM_STORAGE = 'varorm.storage.RedisStorage' # import path to storage
VARORM_STORAGE_CONFIG = {
"url": "redis://localhost:6379/3"
} # storage init config
Now in your django admin you will find VARORM app, enjoy!
Important: when you use FileStorage(JsonStorage or PickleStorage) put {"save_on_set": True} in VARORM_STORAGE_CONFIG
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
varorm-0.1.5.tar.gz
(18.4 kB
view details)
File details
Details for the file varorm-0.1.5.tar.gz
.
File metadata
- Download URL: varorm-0.1.5.tar.gz
- Upload date:
- Size: 18.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.11.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0c18ed4aa80568bb95269e69e15f652e267410587056827c61dd606b868716c0 |
|
MD5 | b68d5dc2217916f03c2fa92075509344 |
|
BLAKE2b-256 | 827f97f6ca8bdb05fb3a6d2c631d138b654f7ffca64312f687228e64fd2c3655 |