sqlx-orm-generator is a model code generator from tables for sqlx-orm_generator.
Project description
Install '''''''
.. code:: shell
pip install mysqlx-generator
Usage Sample ''''''''''''
.. code:: python
from orm_generator import Generator
if __name__ == '__main__':
coder = Generator(host='127.0.0.1', port='3306', user='xxx', password='xxx', database='test')
# you can generate a model class for one table
coder.generate_with_tables(tables='user', path='models.py')
# you can generate model classes for tables
coder.generate_with_tables(tables=['user', 'person'], path='models.py')
# you can generate model classes for all tables from a given schema. default current schema if not given
coder.generate_with_schema(schema='test', path='models.py')
If you run last code, then generate a file 'models.py' in current directory like follow:
.. code:: python
from decimal import Decimal
from datetime import date, datetime
from orm import Model, KeyStrategy
class BaseModel(Model):
__key__ = 'id'
__del_flag__ = 'del_flag'
__update_by__ = 'update_by'
__update_time__ = 'update_time'
__key_strategy__ = KeyStrategy.DB_AUTO_INCREMENT
def __init__(self, id: int = None, create_by: int = None, create_time: datetime = None, update_by: int = None, update_time: datetime = None,
del_flag: int = None):
self.id = id
self.create_by = create_by
self.create_time = create_time
self.update_by = update_by
self.update_time = update_time
self.del_flag = del_flag
class User(BaseModel):
__table__ = 'user'
def __init__(self, id: int = None, name: str = None, age: int = None, birth_date: date = None, sex: int = None, grade: float = None,
point: float = None, money: Decimal = None, create_by: int = None, create_time: datetime = None, update_by: int = None,
update_time: datetime = None, del_flag: int = None):
super().__init__(id=id, create_by=create_by, create_time=create_time, update_by=update_by, update_time=update_time, del_flag=del_flag)
self.name = name
self.age = age
self.birth_date = birth_date
self.sex = sex
self.grade = grade
self.point = point
self.money = money
MySqlx: https://pypi.org/project/mysqlx
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
sqlx-orm-generator-0.0.2.tar.gz
(10.2 kB
view details)
File details
Details for the file sqlx-orm-generator-0.0.2.tar.gz
.
File metadata
- Download URL: sqlx-orm-generator-0.0.2.tar.gz
- Upload date:
- Size: 10.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.9.18
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2b14bca2d00c258d5482838cb5d697454cbaf6d31ecacbad6af2763b40491ba3 |
|
MD5 | 17703df46a0d7de12c0029d00f907774 |
|
BLAKE2b-256 | ef0d21b41f4d390ca5c105780961dd60c2cb3beacda78a6ecbb7af622339a6a2 |