sqlx-orm-generator


Namesqlx-orm-generator JSON
Version 0.0.1 PyPI version JSON
download
home_pagehttps://gitee.com/summry/sqlx-orm-generator
Summarysqlx-orm-generator is a model code generator from tables for sqlx-orm_generator.
upload_time2024-04-22 03:37:41
maintainerNone
docs_urlNone
authorsummry
requires_python>=3.5
licenseNone
keywords mysql mysqlx python
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            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
            

Raw data

            {
    "_id": null,
    "home_page": "https://gitee.com/summry/sqlx-orm-generator",
    "name": "sqlx-orm-generator",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.5",
    "maintainer_email": null,
    "keywords": "MySQL, mysqlx, python",
    "author": "summry",
    "author_email": "xiazhongbiao@126.com",
    "download_url": "https://files.pythonhosted.org/packages/7c/b3/c15f815a27f6ad91d2c140d216df76f38d75d4fa3ed6f82d753e9b7b45bf/sqlx-orm-generator-0.0.1.tar.gz",
    "platform": null,
    "description": "Install\n'''''''\n\n.. code:: shell\n\n   pip install mysqlx-generator\n\nUsage Sample\n''''''''''''\n\n.. code:: python\n\n       from orm_generator import Generator\n\n       if __name__ == '__main__':\n           coder = Generator(host='127.0.0.1', port='3306', user='xxx', password='xxx', database='test')\n           # you can generate a model class for one table\n           coder.generate_with_tables(tables='user', path='models.py')\n           # you can generate model classes for tables\n           coder.generate_with_tables(tables=['user', 'person'], path='models.py')\n           # you can generate model classes for all tables from a given schema. default current schema if not given\n           coder.generate_with_schema(schema='test', path='models.py')\n\nIf you run last code, then generate a file 'models.py' in current\ndirectory like follow:\n\n.. code:: python\n\n       from decimal import Decimal\n       from datetime import date, datetime\n       from orm import Model, KeyStrategy\n\n       class BaseModel(Model):\n           __key__ = 'id'\n           __del_flag__ = 'del_flag'\n           __update_by__ = 'update_by'\n           __update_time__ = 'update_time'\n           __key_strategy__ = KeyStrategy.DB_AUTO_INCREMENT\n\n           def __init__(self, id: int = None, create_by: int = None, create_time: datetime = None, update_by: int = None, update_time: datetime = None,\n                   del_flag: int = None):\n               self.id = id\n               self.create_by = create_by\n               self.create_time = create_time\n               self.update_by = update_by\n               self.update_time = update_time\n               self.del_flag = del_flag\n\n\n       class User(BaseModel):\n           __table__ = 'user'\n\n           def __init__(self, id: int = None, name: str = None, age: int = None, birth_date: date = None, sex: int = None, grade: float = None,\n                   point: float = None, money: Decimal = None, create_by: int = None, create_time: datetime = None, update_by: int = None,\n                   update_time: datetime = None, del_flag: int = None):\n               super().__init__(id=id, create_by=create_by, create_time=create_time, update_by=update_by, update_time=update_time, del_flag=del_flag)\n               self.name = name\n               self.age = age\n               self.birth_date = birth_date\n               self.sex = sex\n               self.grade = grade\n               self.point = point\n               self.money = money\n\n\nMySqlx: https://pypi.org/project/mysqlx",
    "bugtrack_url": null,
    "license": null,
    "summary": "sqlx-orm-generator is a model code generator from tables for sqlx-orm_generator.",
    "version": "0.0.1",
    "project_urls": {
        "Homepage": "https://gitee.com/summry/sqlx-orm-generator"
    },
    "split_keywords": [
        "mysql",
        " mysqlx",
        " python"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "7cb3c15f815a27f6ad91d2c140d216df76f38d75d4fa3ed6f82d753e9b7b45bf",
                "md5": "5accd980c58c661137e63ee6a2e5e08a",
                "sha256": "379b049e08f62124636f64218bf4dbd2e80a8c15f1f1a452954a0024fa534c5c"
            },
            "downloads": -1,
            "filename": "sqlx-orm-generator-0.0.1.tar.gz",
            "has_sig": false,
            "md5_digest": "5accd980c58c661137e63ee6a2e5e08a",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.5",
            "size": 5963,
            "upload_time": "2024-04-22T03:37:41",
            "upload_time_iso_8601": "2024-04-22T03:37:41.314606Z",
            "url": "https://files.pythonhosted.org/packages/7c/b3/c15f815a27f6ad91d2c140d216df76f38d75d4fa3ed6f82d753e9b7b45bf/sqlx-orm-generator-0.0.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-04-22 03:37:41",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "sqlx-orm-generator"
}
        
Elapsed time: 0.24601s