{ "info": { "author": "Pedro Sousa Lacerda", "author_email": "pslacerda@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 2 - Pre-Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.6" ], "description": "apistar-pydantic\n################\n\n\nBetter handler parameters for `APIStar `_\n(and `pydantic `_ support).\n\n\nGeneral usage is working as expected but documentation and OpenAPI schema aren't done yet.\n\n\n.. code-block:: sh\n\n $ pip install apistar-pydantic\n\n\nUsage\n=====\n\n.. code-block:: python\n\n from apistar import App\n from pydantic import BaseModel\n from apistar_pydantic import (\n QueryParam, PathParam, DictBodyData, DictQueryData,\n PydanticBodyData as BodyData,\n PydanticQueryData as QueryData,\n Route, components,\n )\n\n\n #\n # Declare models\n #\n\n class City(BaseModel):\n \"\"\"City info\"\"\"\n name: str\n population: int\n\n class Computer(BaseModel):\n \"\"\"Computer info\"\"\"\n model: str\n price: float\n\n class ComputerCity(City, Computer):\n \"\"\"A computer in a city\"\"\"\n\n\n #\n # Create views\n #\n\n def resource_complete(param1: QueryParam[str],\n param2: QueryParam[int],\n param3: DictBodyData[dict],\n param4: DictQueryData[dict]):\n return repr(locals())\n\n def resource_query(city: QueryData[City]):\n return \"%s has %d citizens.\" % (city.name, city.population)\n\n def resource_body(computer: BodyData[Computer]):\n return \"%s costs R$ %.2f\" % (computer.model, computer.price)\n\n def resource_mixed(city: QueryData[City],\n computer: BodyData[Computer]):\n return ComputerCity(**city.dict(), **computer.dict())\n\n\n #\n # Start the app\n #\n\n app = App(\n routes=[\n Route('/resource', 'GET', resource_query),\n Route('/resource_query', 'GET', resource_query),\n Route('/resource_body', 'POST', resource_body),\n Route('/resource_mixed', 'POST', resource_mixed),\n ],\n components=[\n *components\n ]\n )\n\n if __name__ == '__main__':\n app.serve('127.0.0.1', 3000, debug=True)\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/pslacerda/apistar_pydantic", "keywords": "apistar pydantic", "license": "MIT license", "maintainer": "", "maintainer_email": "", "name": "apistar-pydantic", "package_url": "https://pypi.org/project/apistar-pydantic/", "platform": "", "project_url": "https://pypi.org/project/apistar-pydantic/", "project_urls": { "Homepage": "https://github.com/pslacerda/apistar_pydantic" }, "release_url": "https://pypi.org/project/apistar-pydantic/0.1.0/", "requires_dist": null, "requires_python": "", "summary": "Better parameters for APIStar (and pydantic support)", "version": "0.1.0" }, "last_serial": 3884030, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "294fa0257ad7257bce5191edb7cd689c", "sha256": "9a66d456ec699138a1bf59537665f211a7fba2068629d90fc77f7001787de1c8" }, "downloads": -1, "filename": "apistar-pydantic-0.0.1.tar.gz", "has_sig": false, "md5_digest": "294fa0257ad7257bce5191edb7cd689c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6420, "upload_time": "2018-01-23T22:14:28", "url": "https://files.pythonhosted.org/packages/0f/26/85e2cfe21d1e0b9ca75f79989d994fbdf655f54e622b3771d1937fafc4ef/apistar-pydantic-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "80ae448e59e1906bc4fdf64cf92792aa", "sha256": "6aa59b6206c356fbaea0edb10c3e9f638cd1b2793b85edad8540371c5ebe4562" }, "downloads": -1, "filename": "apistar-pydantic-0.0.2.tar.gz", "has_sig": false, "md5_digest": "80ae448e59e1906bc4fdf64cf92792aa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6488, "upload_time": "2018-01-28T04:45:01", "url": "https://files.pythonhosted.org/packages/08/f2/63e68c2be387b31c75df2bede98415fb9d71f6d54daa157850f2b1b7e4ab/apistar-pydantic-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "30fbcec9fb51bdc7f70319e7245165da", "sha256": "3d488edcd6219d1e681e0c4cee111d5d2ffc6a83a1fbcf9f6ce49268ece41c6e" }, "downloads": -1, "filename": "apistar-pydantic-0.0.3.tar.gz", "has_sig": false, "md5_digest": "30fbcec9fb51bdc7f70319e7245165da", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 306909, "upload_time": "2018-01-30T05:56:17", "url": "https://files.pythonhosted.org/packages/d9/f6/ae8dcf22023d69479a8de763d6c65c9a4de3224704c2f4c899ae2bb236be/apistar-pydantic-0.0.3.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "25c3709af6dce07da5be7c81de7fbda1", "sha256": "30dd4a7012e28c1b30b98c4169f45e2bfe472afae82d4869bcb855dbcd750b13" }, "downloads": -1, "filename": "apistar-pydantic-0.0.4.tar.gz", "has_sig": false, "md5_digest": "25c3709af6dce07da5be7c81de7fbda1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 304305, "upload_time": "2018-01-30T06:37:47", "url": "https://files.pythonhosted.org/packages/07/09/bc605e9db46bb50379d0b8566883eadd75b64ad370d253461e72a7761082/apistar-pydantic-0.0.4.tar.gz" } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "d04e5f8f03d80d93a97d73bccf3af24d", "sha256": "5eae4f421dc0370ce3445100e0bf4010d5e57b4a646ee99741bf485968a496f5" }, "downloads": -1, "filename": "apistar-pydantic-0.0.5.tar.gz", "has_sig": false, "md5_digest": "d04e5f8f03d80d93a97d73bccf3af24d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 196712, "upload_time": "2018-05-21T15:57:58", "url": "https://files.pythonhosted.org/packages/99/0d/b6f7ef133727b31a8d605a22c2fbdba5f30a175796dc748b6e4dbfe7feb0/apistar-pydantic-0.0.5.tar.gz" } ], "0.1.0": [ { "comment_text": "", "digests": { "md5": "a140b1c1b5bf5f12e93030724d9524c6", "sha256": "bdd429465b307c91ad5e196b3364c805747b2bf3d8159830f6b364a23641c040" }, "downloads": -1, "filename": "apistar-pydantic-0.1.0.tar.gz", "has_sig": false, "md5_digest": "a140b1c1b5bf5f12e93030724d9524c6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 196691, "upload_time": "2018-05-21T16:05:06", "url": "https://files.pythonhosted.org/packages/f5/00/396c536aee6facfba53fd67c1cfc5e17f5511773e99f80ff772d22ce063f/apistar-pydantic-0.1.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "a140b1c1b5bf5f12e93030724d9524c6", "sha256": "bdd429465b307c91ad5e196b3364c805747b2bf3d8159830f6b364a23641c040" }, "downloads": -1, "filename": "apistar-pydantic-0.1.0.tar.gz", "has_sig": false, "md5_digest": "a140b1c1b5bf5f12e93030724d9524c6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 196691, "upload_time": "2018-05-21T16:05:06", "url": "https://files.pythonhosted.org/packages/f5/00/396c536aee6facfba53fd67c1cfc5e17f5511773e99f80ff772d22ce063f/apistar-pydantic-0.1.0.tar.gz" } ] }