LightMagic is very simple and quick python3 ORM over momoko/psycopg2.
Project description
LightMagic
==========
LightMagic is very simple and quick python3 ORM over momoko/psycopg2.
Введение
--------
LightMagic - это простая и быстрая (условно) ORM система для Postgres.
Система позволяет использовать ограниченный набор запросов для конкретной модели, в частности:
* create()
* get_list()
* load()
* remove()
* upsert()
и использовать оператор join() для нескольких моделей.
При необходимости Вы можете легко расширить свою модель дополнительными методами.
LightMagic изначально разрабатывалась как ORM для Tornado + Postgres, но Вы так же можете использовать одни и те же
модели и для обычных (синхронных) скриптов (например cron).
Простой вариант использования:
import LightMagic.types as types
from LightMagic.db.Model import Model
class ExampleClass(Model):
"""Just Example Class"""
id = types.Int(value=3, allow_none=False, db_primary_key=True, db_autovalue=True)
region = types.Str(allow_none=False, db_primary_key=True, db_autovalue=False, db_default_value='Moscow')
name = types.Str(min_length=3, max_length=10)
name_2 = types.Str(regexp=re.compile('^[a-z]{1,3}$'))
cdate = types.DateTime(db_default_value='NOW()')
udate = types.DateTime(db_default_value='NOW()')
params = types.Json(db_default_value='{}')
list = types.List(type_of_elements=int, db_type=None)
uuid4 = types.UUID4()
pan = types.CardPan()
enum = types.Enum(list_of_values=('a', 1, 10, 8))
lang = types.Language()
email = types.Email()
secret_string = types.CryptoAES(secret_key='qnflslglslvn3ogl', initialization_vector='fhwkfnwifh3hfhsh')
def get_table_name(self):
return 'test.table'
License
-------
LightMagic is distributed under the MIT license http://www.opensource.org/licenses/mit-license.php
==========
LightMagic is very simple and quick python3 ORM over momoko/psycopg2.
Введение
--------
LightMagic - это простая и быстрая (условно) ORM система для Postgres.
Система позволяет использовать ограниченный набор запросов для конкретной модели, в частности:
* create()
* get_list()
* load()
* remove()
* upsert()
и использовать оператор join() для нескольких моделей.
При необходимости Вы можете легко расширить свою модель дополнительными методами.
LightMagic изначально разрабатывалась как ORM для Tornado + Postgres, но Вы так же можете использовать одни и те же
модели и для обычных (синхронных) скриптов (например cron).
Простой вариант использования:
import LightMagic.types as types
from LightMagic.db.Model import Model
class ExampleClass(Model):
"""Just Example Class"""
id = types.Int(value=3, allow_none=False, db_primary_key=True, db_autovalue=True)
region = types.Str(allow_none=False, db_primary_key=True, db_autovalue=False, db_default_value='Moscow')
name = types.Str(min_length=3, max_length=10)
name_2 = types.Str(regexp=re.compile('^[a-z]{1,3}$'))
cdate = types.DateTime(db_default_value='NOW()')
udate = types.DateTime(db_default_value='NOW()')
params = types.Json(db_default_value='{}')
list = types.List(type_of_elements=int, db_type=None)
uuid4 = types.UUID4()
pan = types.CardPan()
enum = types.Enum(list_of_values=('a', 1, 10, 8))
lang = types.Language()
email = types.Email()
secret_string = types.CryptoAES(secret_key='qnflslglslvn3ogl', initialization_vector='fhwkfnwifh3hfhsh')
def get_table_name(self):
return 'test.table'
License
-------
LightMagic is distributed under the MIT license http://www.opensource.org/licenses/mit-license.php
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
LightMagic-0.0.3.tar.gz
(17.5 kB
view hashes)