{ "info": { "author": "Joern Boegeholz", "author_email": "boegeholz.joern@gmail.com", "bugtrack_url": null, "classifiers": [], "description": "# flask_url_mapping\nDjango-style url handling for Flask\n\nInspired by [https://stackoverflow.com/questions/31680048/django-styled-flask-url-pattern-for-large-application]\nthis package is an attempt to generalize the concept of Django-like url-view / endpoint-mapping.\n\nYou can install it via \n```\npip install flask-url-mapping\n```\n\nCenterpiece is an urls.py which contains the mapping.\n```\nurls = [\n (\"/\", views.index), #1\n (\"/login\", views.login, [\"GET\", \"POST\"]), #2\n (\"/home\", \"home.urls\") #3\n (\"/admin\", views.admin, [\"GET\"], \"admin_role\"), #4\n]\n```\nThere are four ways to map routes to endpoints\n1. route to endpoint, http method default is GET\n2. route to endpoint with array of http methods\n3. route to component see Components\n4. route to endpoint with array of http methods and required role\n\n\nAfter declaring your url mapping You can register the urls to the flask app via `register_urls`\n\n\n## A sample setup without permissions\n* wsgi.py\n```\nfrom flask import Flask\nfrom flask_url_mapping import register_urls\nfrom urls import urls\napp = Flask(__name__)\n\nif __name__ == '__main__':\n flask_urls = FlaskUrls(app)\n flask_urls.register_urls(urls)\n app.run()\n```\n* urls.py\n```\nfrom views import *\nurls = [\n (\"/\", hello_world, [\"GET\"])\n]\n```\n* views.py\n```\ndef hello_world():\n return 'Hello World!' \n```\n## A sample setup with permissions\nWhen adding a role to a route endpoint mapping your project has to use flask_login\n\n## Components\nA component is a subfolder which contains at least an urls.py and an views.py\nWhen this folder also contains a templates directory, it will be automatically added to the jinja2 search path for html templates\n\n## Travis-CI\n[![Build Status](https://travis-ci.org/jboegeholz/flaskurls.svg?branch=master)](https://travis-ci.org/jboegeholz/flaskurls)\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "https://github.com/jboegeholz/flaskurls/archive/0.2.tar.gz", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/jboegeholz/flaskurls", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "flask-url-mapping", "package_url": "https://pypi.org/project/flask-url-mapping/", "platform": "", "project_url": "https://pypi.org/project/flask-url-mapping/", "project_urls": { "Download": "https://github.com/jboegeholz/flaskurls/archive/0.2.tar.gz", "Homepage": "https://github.com/jboegeholz/flaskurls" }, "release_url": "https://pypi.org/project/flask-url-mapping/0.6/", "requires_dist": [ "Flask", "Flask-Login" ], "requires_python": "", "summary": "Django-style url handling for Flask", "version": "0.6" }, "last_serial": 4938393, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "34129dc57010c28712360e2b429c5a4f", "sha256": "7714fdb193604d363bbcfbf9d316fa6501c7709746293a292ce9e16c8e5bda8b" }, "downloads": -1, "filename": "flask_url_mapping-0.1.tar.gz", "has_sig": false, "md5_digest": "34129dc57010c28712360e2b429c5a4f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1586, "upload_time": "2018-04-18T11:31:22", "url": "https://files.pythonhosted.org/packages/ce/b2/b7b5e1b934b9b06b49e8f15dbd8c92b0ad9c13709fcece3c0705c1a800f1/flask_url_mapping-0.1.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "0a23a2f37a7697c74537bfa5f0aea1aa", "sha256": "25d7c5da2bd7421dc68d1576dbd84462879c370c0679cc85628d74852464e47d" }, "downloads": -1, "filename": "flask_url_mapping-0.2.tar.gz", "has_sig": false, "md5_digest": "0a23a2f37a7697c74537bfa5f0aea1aa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1971, "upload_time": "2018-04-18T13:20:56", "url": "https://files.pythonhosted.org/packages/f1/58/630cf68a851765a440c2a63246fa6c1e15fd9777a419440b4568ff1d8fe2/flask_url_mapping-0.2.tar.gz" } ], "0.3": [ { "comment_text": "", "digests": { "md5": "d2068e886bcdd1837fe4fbed86d0f048", "sha256": "e46f4ae5f806eaf913370c1693eb11ed6c5a74f134b09a06e3126dde99a478a3" }, "downloads": -1, "filename": "flask_url_mapping-0.3.tar.gz", "has_sig": false, "md5_digest": "d2068e886bcdd1837fe4fbed86d0f048", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2059, "upload_time": "2018-04-27T11:39:49", "url": "https://files.pythonhosted.org/packages/fd/1e/c45b01dc752312923cbc5e7c3cea1c91d9fa53198ad2976d7bd73cf781ae/flask_url_mapping-0.3.tar.gz" } ], "0.4": [ { "comment_text": "", "digests": { "md5": "affdd0bce030712f2c4705cd7c303874", "sha256": "b94724ae355b0eec9b36324177e80e8d7588742873d4d63cf508bd135322770f" }, "downloads": -1, "filename": "flask_url_mapping-0.4.tar.gz", "has_sig": false, "md5_digest": "affdd0bce030712f2c4705cd7c303874", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2980, "upload_time": "2018-06-06T11:34:38", "url": "https://files.pythonhosted.org/packages/91/76/a3d1efdf976fc317b46dfcfaad325d862f96abf339faa6b17fcac02a9b52/flask_url_mapping-0.4.tar.gz" } ], "0.5": [ { "comment_text": "", "digests": { "md5": "55c08f621b14185c3d7972d99ffe296a", "sha256": "121dfb30bd20a573f370795ee7ce2a5b3906cbc9efdf4e9bd7027059333b2a05" }, "downloads": -1, "filename": "flask_url_mapping-0.5-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "55c08f621b14185c3d7972d99ffe296a", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 3860, "upload_time": "2019-03-14T08:47:39", "url": "https://files.pythonhosted.org/packages/04/0d/844fb3283e7c4f0303740a20780883ec1925cbad036841ae7133516ebfa4/flask_url_mapping-0.5-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c154b6d1261da5c83abcb9216c1f9829", "sha256": "fce46045d1eacb3b7f31d0407d307f40a6c5e7cb8875fd051d1f04a1c35dfb38" }, "downloads": -1, "filename": "flask_url_mapping-0.5.tar.gz", "has_sig": false, "md5_digest": "c154b6d1261da5c83abcb9216c1f9829", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4006, "upload_time": "2019-03-14T08:47:41", "url": "https://files.pythonhosted.org/packages/61/4c/9fd9ffafbecc28efa461c448b8c522ed83dcec87ffc3d86f02db2386c5c0/flask_url_mapping-0.5.tar.gz" } ], "0.6": [ { "comment_text": "", "digests": { "md5": "23c334d7d27b8cd0ac0fc091a631d5d2", "sha256": "82f5a16b2a2333563117cbe99a3210b19167a69da1b013fed76b1ea6961a422f" }, "downloads": -1, "filename": "flask_url_mapping-0.6-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "23c334d7d27b8cd0ac0fc091a631d5d2", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 4699, "upload_time": "2019-03-14T08:53:06", "url": "https://files.pythonhosted.org/packages/dd/20/98d98539466783af8ee41882819a43850653f9e8a65c5ebbf2d5a964fe2e/flask_url_mapping-0.6-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "528174c40bc1b6a34a3c26e7fa17adc6", "sha256": "d42389a12089eb07f65edf48569846890642111c5e0288051f8213f51855dee7" }, "downloads": -1, "filename": "flask_url_mapping-0.6.tar.gz", "has_sig": false, "md5_digest": "528174c40bc1b6a34a3c26e7fa17adc6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4377, "upload_time": "2019-03-14T08:53:29", "url": "https://files.pythonhosted.org/packages/c7/c2/959f740197e59f2ae3cf9e93422a61bfbb3216317bb9d95a8768c3b4af0a/flask_url_mapping-0.6.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "23c334d7d27b8cd0ac0fc091a631d5d2", "sha256": "82f5a16b2a2333563117cbe99a3210b19167a69da1b013fed76b1ea6961a422f" }, "downloads": -1, "filename": "flask_url_mapping-0.6-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "23c334d7d27b8cd0ac0fc091a631d5d2", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 4699, "upload_time": "2019-03-14T08:53:06", "url": "https://files.pythonhosted.org/packages/dd/20/98d98539466783af8ee41882819a43850653f9e8a65c5ebbf2d5a964fe2e/flask_url_mapping-0.6-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "528174c40bc1b6a34a3c26e7fa17adc6", "sha256": "d42389a12089eb07f65edf48569846890642111c5e0288051f8213f51855dee7" }, "downloads": -1, "filename": "flask_url_mapping-0.6.tar.gz", "has_sig": false, "md5_digest": "528174c40bc1b6a34a3c26e7fa17adc6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4377, "upload_time": "2019-03-14T08:53:29", "url": "https://files.pythonhosted.org/packages/c7/c2/959f740197e59f2ae3cf9e93422a61bfbb3216317bb9d95a8768c3b4af0a/flask_url_mapping-0.6.tar.gz" } ] }