{ "info": { "author": "Zhou Zhiping", "author_email": "himoker@163.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3" ], "description": "When ini config file looks like below:\n```ini\n[default]\ndebug = False\n\n[mysql]\nconnection = sqlite:///test.db\n#connection = mysql+pymysql://root:password@localhost:13306/project?charset=utf8\ntrack_modifications = True\n\n[secure]\nsecure_key = YjFjMDVkYzAtZGI4YS0xMWU5LWIwMjctMTdhNzg4ZjJiMGUyCg==\n\n[jwt]\nsecret = YTgzNmM0OWUtNjllMS00MjI4LWFlZTMtNjgxNjAwNDdiNTBlCg==\nalgorithm = HS256\n\n[test]\nint_value = 1231\n```\n\nYou need to create class based on ConfigOpts\n```python\nfrom flask_fastconfig import ConfigOpts, ConfigGroup\nfrom flask_fastconfig.config_opt import BooleanOpt, StrOpt, IntOpt\nimport uuid\n\n\nclass CONF(ConfigOpts):\n \"\"\"\n ini configs\n \"\"\"\n\n class default(ConfigGroup):\n debug = BooleanOpt(default=True, app_config=\"DEBUG\")\n\n class mysql(ConfigGroup):\n connection = StrOpt(default='sqlite:///gevoton.db', app_config=\"SQLALCHEMY_DATABASE_URI\")\n track_modifications = BooleanOpt(default=False, app_config=\"SQLALCHEMY_TRACK_MODIFICATIONS\")\n\n class secure(ConfigGroup):\n secure_key = StrOpt(default=uuid.uuid4().hex, app_config=\"SECRET_KEY\")\n\n class jwt(ConfigGroup):\n secret = StrOpt(default=uuid.uuid4().hex)\n algorithm = StrOpt(default='HS256')\n\n class test(ConfigGroup):\n int_value = IntOpt(default=123)\n```\n\nThen you can init flask app like below\n```python\nfrom flask import Flask\nfrom test import CONF\n\napp = Flask(__name__)\ncfg = CONF(app, \"../system/etc/gevoton.ini\")\napp.config.from_mapping(cfg.get_app_config())\n```\n\nFinally, you can use cfg in other places:\n```python\nfrom app import cfg\n\nprint(cfg.mysql.connection)\n```\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/zpzhoudev/flask-fastconfig", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "flask-fastconfig", "package_url": "https://pypi.org/project/flask-fastconfig/", "platform": "", "project_url": "https://pypi.org/project/flask-fastconfig/", "project_urls": { "Homepage": "https://github.com/zpzhoudev/flask-fastconfig" }, "release_url": "https://pypi.org/project/flask-fastconfig/0.0.3/", "requires_dist": null, "requires_python": "", "summary": "ini config model for flask", "version": "0.0.3" }, "last_serial": 5894421, "releases": { "0.0.2": [ { "comment_text": "", "digests": { "md5": "2db4033a362f526f8d6202bf9de4cb77", "sha256": "2eb285f6c0ae82b09e868b5f5148a0d34dcec376ece8afc05f0f69a19887afd6" }, "downloads": -1, "filename": "flask_fastconfig-0.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "2db4033a362f526f8d6202bf9de4cb77", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 4539, "upload_time": "2019-09-27T06:31:31", "url": "https://files.pythonhosted.org/packages/fb/67/df0cdc4c6a7127b39510e6b1144629f639214c8bad2edfe8b14df3ee12cf/flask_fastconfig-0.0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "eee99cad2fe04b17b887b73985304804", "sha256": "76290089b1ab6daab85c141d6a6a65291eb80ef1ab8b1734cccba39c143c2ec7" }, "downloads": -1, "filename": "flask-fastconfig-0.0.2.tar.gz", "has_sig": false, "md5_digest": "eee99cad2fe04b17b887b73985304804", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3182, "upload_time": "2019-09-27T06:31:33", "url": "https://files.pythonhosted.org/packages/61/25/d5d1211759d1a086873ae7c1a9e3c2b7142b3dae0584b16b9fa4c407a7a2/flask-fastconfig-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "2519482815254bec9a202a39a4cb7869", "sha256": "1e3beb3136421827a6652b180612fd8c8523ac06a7a20be10a21ed25408a1024" }, "downloads": -1, "filename": "flask_fastconfig-0.0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "2519482815254bec9a202a39a4cb7869", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 4538, "upload_time": "2019-09-27T06:32:52", "url": "https://files.pythonhosted.org/packages/3b/5d/8b2cf40cd7887c9b8cf246f9873458ac58e681f76973f91bfbe43f762a2d/flask_fastconfig-0.0.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2266d0d201a149ef8bf709382a6ca93f", "sha256": "97634460d85b1f99728851ed46bf6878ad39eea9a01bd30ff5c166f3e7eac665" }, "downloads": -1, "filename": "flask-fastconfig-0.0.3.tar.gz", "has_sig": false, "md5_digest": "2266d0d201a149ef8bf709382a6ca93f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3186, "upload_time": "2019-09-27T06:32:55", "url": "https://files.pythonhosted.org/packages/4a/9b/c4559da5902747beda47d742388782adcfd3a20eafcb68096936eac373e2/flask-fastconfig-0.0.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "2519482815254bec9a202a39a4cb7869", "sha256": "1e3beb3136421827a6652b180612fd8c8523ac06a7a20be10a21ed25408a1024" }, "downloads": -1, "filename": "flask_fastconfig-0.0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "2519482815254bec9a202a39a4cb7869", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 4538, "upload_time": "2019-09-27T06:32:52", "url": "https://files.pythonhosted.org/packages/3b/5d/8b2cf40cd7887c9b8cf246f9873458ac58e681f76973f91bfbe43f762a2d/flask_fastconfig-0.0.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2266d0d201a149ef8bf709382a6ca93f", "sha256": "97634460d85b1f99728851ed46bf6878ad39eea9a01bd30ff5c166f3e7eac665" }, "downloads": -1, "filename": "flask-fastconfig-0.0.3.tar.gz", "has_sig": false, "md5_digest": "2266d0d201a149ef8bf709382a6ca93f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3186, "upload_time": "2019-09-27T06:32:55", "url": "https://files.pythonhosted.org/packages/4a/9b/c4559da5902747beda47d742388782adcfd3a20eafcb68096936eac373e2/flask-fastconfig-0.0.3.tar.gz" } ] }