{ "info": { "author": "Remco Haszing", "author_email": "remcohaszing@gmail.com", "bugtrack_url": null, "classifiers": [], "description": "python-warouter\n===============\n\nWarouter is a simple routing wrapper around webapp2_.\n\n\nInstalling\n----------\n\n::\n\n $ pip install warouter\n\n\nUsage\n-----\n\nWarouter provides url inheritance for handlers and a convenient ``uri_for`` function which can be called with a handler, instead of a string name.\n\nA WSGIApplication mixin is provided which can handle a list of ``url`` decorator handlers.\n\nExample:\n\n>>> import warouter\n>>> import webapp2\n>>>\n>>> @warouter.url('/')\n... class RootHandler(webapp2.RequestHandler):\n... def get(self):\n... self.response.write('root')\n...\n>>> @warouter.url('/child/')\n... class ChildHandler(RootHandler):\n... def get(self, child_param):\n... self.response.write(child_param)\n... def put(self, child_param):\n... pass\n...\n>>> @warouter.url('/grandchild/')\n... class GrandChildHandler(ChildHandler):\n... def get(self, child_param, grandchild_param):\n... self.response.write('\\n'.join([child_param, grandchild_param]))\n... def post(self, child_param, grandchild_param):\n... self.response.write(warouter.uri_for(ChildHandler,\n... child_param=child_param))\n...\n>>> assert RootHandler.url == '/'\n>>> assert ChildHandler.url == '/child/'\n>>> assert GrandChildHandler.url == (\n... '/child//grandchild/')\n>>> assert GrandChildHandler.put is None\n>>>\n>>> app = warouter.WSGIApplication([\n... RootHandler,\n... ChildHandler,\n... GrandChildHandler\n... ])\n>>>\n>>> if __name__ == '__main__':\n... from paste import httpserver\n... httpserver.serve(app, port='8080')\n...\n>>>\n\nThe above example requires Paste_, which can be installed using::\n\n $ pip install paste\n\n\n.. _Paste: https://pypi.python.org/pypi/Paste\n.. _webapp2: https://webapp-improved.appspot.com/\n\n\nLicense\n-------\n\nMIT", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/remcohaszing/python-warouter", "keywords": null, "license": "MIT", "maintainer": null, "maintainer_email": null, "name": "warouter", "package_url": "https://pypi.org/project/warouter/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/warouter/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/remcohaszing/python-warouter" }, "release_url": "https://pypi.org/project/warouter/0.1.1/", "requires_dist": null, "requires_python": null, "summary": "Warouter is a simple routing wrapper around webapp2.", "version": "0.1.1" }, "last_serial": 1436577, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "1876e16014b820ad2baa13f8dc12e539", "sha256": "63d39fd66e0bd94285da96497b288b8837006502533c9c34c4c43bfccf071a94" }, "downloads": -1, "filename": "warouter-0.0.1.tar.gz", "has_sig": false, "md5_digest": "1876e16014b820ad2baa13f8dc12e539", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2784, "upload_time": "2014-09-26T17:27:07", "url": "https://files.pythonhosted.org/packages/5e/64/df6f6f0e76af0188572815a028ded9e68893ab3d339e7a6f7d95487b68e7/warouter-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "a9d25ff4cecc1ad65940b21262241c86", "sha256": "8ae0e0f73486dc0bd329aba75bc4f507deb002e1d1de32890d5ed582d59fb3cc" }, "downloads": -1, "filename": "warouter-0.0.2.tar.gz", "has_sig": false, "md5_digest": "a9d25ff4cecc1ad65940b21262241c86", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2778, "upload_time": "2014-09-27T11:56:14", "url": "https://files.pythonhosted.org/packages/d6/c9/0cd3b4ef21538dd23d97a6561385fd422eb9ca5f1f309bfb68ddf57a641d/warouter-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "541ea635cad767c0144c6a087a332122", "sha256": "d00ff5cd7aa6255b7d9fd625a6b86a713b93ecc079dedcf0235145d771c2f031" }, "downloads": -1, "filename": "warouter-0.0.3-py2-none-any.whl", "has_sig": false, "md5_digest": "541ea635cad767c0144c6a087a332122", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 5235, "upload_time": "2015-01-29T21:53:53", "url": "https://files.pythonhosted.org/packages/08/1e/bf23a93109ec753da5adada0933543576897b32a854da19be4808d0b16aa/warouter-0.0.3-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "121cac0d37cd655dc9df7008552319a8", "sha256": "22163eecc089b92a9f7e4980a1aadf550e01764a32ba50874c4d6befa7e27d8e" }, "downloads": -1, "filename": "warouter-0.0.3.tar.gz", "has_sig": false, "md5_digest": "121cac0d37cd655dc9df7008552319a8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2994, "upload_time": "2014-10-09T21:10:37", "url": "https://files.pythonhosted.org/packages/4e/ea/e38b44ea88efb4580e51c440f99ed84073c8dfd46cf44396964ff4475416/warouter-0.0.3.tar.gz" } ], "0.1.0": [ { "comment_text": "", "digests": { "md5": "e43d8a71c3e520cf21d4ce50217c5de9", "sha256": "20b1f7aa1289e3f9cfaa8a1d48e34beeef539052e9f2eb41093c9c6e5d808078" }, "downloads": -1, "filename": "warouter-0.1.0-py27-none-any.whl", "has_sig": false, "md5_digest": "e43d8a71c3e520cf21d4ce50217c5de9", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 5560, "upload_time": "2015-01-30T21:04:20", "url": "https://files.pythonhosted.org/packages/d2/ce/d21ede19f3b8f2c444e1898f50835e02e124d7f0af2c9138546b0d56ecb2/warouter-0.1.0-py27-none-any.whl" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "fbb9072f0a3111dd938927c1d70c8d73", "sha256": "e8c3377a44360dc9716e26ce65d7e85336ac5d6242e703967ff74095f927271a" }, "downloads": -1, "filename": "warouter-0.1.1-py27-none-any.whl", "has_sig": false, "md5_digest": "fbb9072f0a3111dd938927c1d70c8d73", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 5565, "upload_time": "2015-02-24T20:23:40", "url": "https://files.pythonhosted.org/packages/5b/0e/cac9e048e6cb2e17d6bb4b6f379108d7a1da787c74b1cbd54241bfd5756d/warouter-0.1.1-py27-none-any.whl" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "fbb9072f0a3111dd938927c1d70c8d73", "sha256": "e8c3377a44360dc9716e26ce65d7e85336ac5d6242e703967ff74095f927271a" }, "downloads": -1, "filename": "warouter-0.1.1-py27-none-any.whl", "has_sig": false, "md5_digest": "fbb9072f0a3111dd938927c1d70c8d73", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 5565, "upload_time": "2015-02-24T20:23:40", "url": "https://files.pythonhosted.org/packages/5b/0e/cac9e048e6cb2e17d6bb4b6f379108d7a1da787c74b1cbd54241bfd5756d/warouter-0.1.1-py27-none-any.whl" } ] }