{ "info": { "author": "Konrad Rotkiewicz", "author_email": "konrad.rotkiewicz@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "choose\n========\n\nChoices on steroids\n\n.. image:: https://img.shields.io/pypi/v/choose.svg\n :target: https://pypi.python.org/pypi/choose\n\n.. image:: https://img.shields.io/travis/ulamlabs/choose.svg\n :target: https://travis-ci.org/ulamlabs/choose\n\n.. image:: https://codecov.io/gh/ulamlabs/choose/branch/master/graph/badge.svg\n :target: https://codecov.io/gh/ulamlabs/choose\n\n\nSupported versions\n================\n\n- Python 2 and 3 support\n\n\nHow to install\n==========\n\n .. code-block:: bash\n \n pip install choose\n\n\nBasic usage:\n===========\n\n .. code-block:: python\n\n >>> class Types(choose.Choices):\n >>> BAR = choose.Choice('foo_bar', 'Foo Bar')\n >>> BAZ = choose.Choice('foo_baz', 'Foo Baz')\n >>> Types.BAR\n 'foo_bar'\n >>> Types.BAR.text\n 'Foo Bar'\n >>> Types.items()\n (('foo_bar', 'Foo Bar'), ('foo_baz', 'Foo Baz'))\n >>> Types.keys()\n ('foo_bar', 'foo_baz')\n >>> Types.values()\n ('Foo Bar', 'Foo Baz')\n >>> 'foo_bar' in Types\n True\n\nExtended usage:\n===============\n\n .. code-block:: python\n\n >>> class Types2(choose.Choices):\n >>> BAR = choose.Choice('foo_bar', 'Foo Bar', default=False)\n >>> BAZ = choose.Choice('foo_baz', 'Foo Baz', default=False)\n >>> FOO = choose.Choice('foo_foo', 'Foo Foo', default=True)\n >>>\n >>> @classmethod\n >>> def get_default(cls):\n >>> return next(\n >>> (item for item in cls.keys() if item.opts.default is True),\n >>> None,\n >>> )\n >>>\n >>> Types2.BAR.opts.default\n False\n >>> Types2.BAR.opts.not_existing_attr is None\n True\n >>> 'foo_bar' == Types2.get_default()\n False\n >>> Types2.BAR == Types2.get_default()\n False\n >>> 'foo_foo' == Types2.get_default()\n True\n >>> Types2.FOO == Types2.get_default()\n True\n\nUsage in Django:\n================\n\n .. code-block:: python\n\n class AModel(models.Model):\n class AChoices(choose.Choices):\n X = choose.Choice('x', 'X')\n Y = choose.Choice('y', 'Y')\n\n choice = models.CharField(max_length=63, choices=AChoices.items())\n", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/ulamlabs/choose", "keywords": "", "license": "BSD", "maintainer": "", "maintainer_email": "", "name": "choose", "package_url": "https://pypi.org/project/choose/", "platform": "", "project_url": "https://pypi.org/project/choose/", "project_urls": { "Homepage": "http://github.com/ulamlabs/choose" }, "release_url": "https://pypi.org/project/choose/2.0.0/", "requires_dist": null, "requires_python": "", "summary": "Choices on steroids", "version": "2.0.0" }, "last_serial": 2989351, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "bbf21676a89bf21202e60d78264342c9", "sha256": "814f92e943faea418825a80e9f48c5b6f9736fa906b9fd4f7eccc007be14513d" }, "downloads": -1, "filename": "choose-0.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "bbf21676a89bf21202e60d78264342c9", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 2981, "upload_time": "2015-10-29T07:50:11", "url": "https://files.pythonhosted.org/packages/df/cd/c6e9b4312ba88888d5aae5b96c89963ed77e8cf45f63b4ef7168e922b8f3/choose-0.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3d82d233f505d30fea6049dbd6402432", "sha256": "5fa2e0ddb10e37c26fbfd78bb7c762a2260fadcf495a51203a777b41d596953a" }, "downloads": -1, "filename": "choose-0.1.tar.gz", "has_sig": false, "md5_digest": "3d82d233f505d30fea6049dbd6402432", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1591, "upload_time": "2015-10-29T07:50:21", "url": "https://files.pythonhosted.org/packages/71/5d/c21030b41308c678c6434c9cf974f7733ea3cde81d5601ba47f8fdee4436/choose-0.1.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "4c0c2d48f66e328a0720bc119a4b5be5", "sha256": "507b8ced3ddbad47342ca9134880b9a565584e3dd0582c711a420775d3f2d69a" }, "downloads": -1, "filename": "choose-0.2.tar.gz", "has_sig": false, "md5_digest": "4c0c2d48f66e328a0720bc119a4b5be5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1565, "upload_time": "2016-04-23T17:35:04", "url": "https://files.pythonhosted.org/packages/cf/c1/fc11f341887a28f2df794959d886777863f13e771f8d1335c39ec68a2b92/choose-0.2.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "5ee90309ec3d715b42a25cac9455240c", "sha256": "524f6398ccc284c4943b9d029a3b0d902c0f4ec48d88670e2c70ce2984c73d2c" }, "downloads": -1, "filename": "choose-0.2.1.tar.gz", "has_sig": false, "md5_digest": "5ee90309ec3d715b42a25cac9455240c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1571, "upload_time": "2016-04-23T17:38:36", "url": "https://files.pythonhosted.org/packages/3c/1a/d7c28f266aaf90a061a160285890c26b41102715bd7c235a58740a723285/choose-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "42de1d4f8d210fc99d76b56c4ff77ad6", "sha256": "c224f64b4e9ee38cd9fcdfacaabdac8e786e80a87fb62de229b6bbddb785ca59" }, "downloads": -1, "filename": "choose-0.2.2.tar.gz", "has_sig": false, "md5_digest": "42de1d4f8d210fc99d76b56c4ff77ad6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1617, "upload_time": "2016-04-23T17:40:07", "url": "https://files.pythonhosted.org/packages/99/de/f8fdce1594e3ce20eb292912725d7c36d2b78867ce6df9d417964b7a00de/choose-0.2.2.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "41334ddd21abfe2e372b544bce7dd114", "sha256": "372639c8a6fa643d9311c8dd49fddb8bb8a1ad80175d234a7e9dd1871dd7d8c5" }, "downloads": -1, "filename": "choose-0.2.3.tar.gz", "has_sig": false, "md5_digest": "41334ddd21abfe2e372b544bce7dd114", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1658, "upload_time": "2016-04-23T17:43:14", "url": "https://files.pythonhosted.org/packages/3f/7c/e4ecc85d1bf2d0c1ce1cbbffef4003f0591e532320a816628b325462b123/choose-0.2.3.tar.gz" } ], "0.2.4": [ { "comment_text": "", "digests": { "md5": "42b0b5dbcb2ac3d0dc9716789bcb4304", "sha256": "3d42463437bfdfb3a1a4f6465bb4757d5831ce73ba7597d7f5fdb89009e48d02" }, "downloads": -1, "filename": "choose-0.2.4.tar.gz", "has_sig": false, "md5_digest": "42b0b5dbcb2ac3d0dc9716789bcb4304", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2049, "upload_time": "2016-04-23T18:07:12", "url": "https://files.pythonhosted.org/packages/c6/05/80449336e7d9c358e557c4e472c153886df0e4ff11b0791ca44bc866a3ce/choose-0.2.4.tar.gz" } ], "0.2.5": [ { "comment_text": "", "digests": { "md5": "b5fbdad3e11d863043875efa3fc44a40", "sha256": "365f4de2b664e5c5eef75674f401df7c2d2dce75f5166e2d7a398f45a50e7545" }, "downloads": -1, "filename": "choose-0.2.5.tar.gz", "has_sig": false, "md5_digest": "b5fbdad3e11d863043875efa3fc44a40", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2068, "upload_time": "2016-04-23T18:10:42", "url": "https://files.pythonhosted.org/packages/fd/14/108729fa071401c33db4b06b0373f70cd92097bb2212330ae343d263c36d/choose-0.2.5.tar.gz" } ], "0.2.6": [ { "comment_text": "", "digests": { "md5": "0f7a9bf5b4be5e0efc97b5da5bbaa4ba", "sha256": "4302bb3cfa4f0a8cd08bea436340b943290d2e581677f1a444dbacffdb6db816" }, "downloads": -1, "filename": "choose-0.2.6.tar.gz", "has_sig": false, "md5_digest": "0f7a9bf5b4be5e0efc97b5da5bbaa4ba", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2321, "upload_time": "2016-04-23T18:15:28", "url": "https://files.pythonhosted.org/packages/a5/62/c8e3c18c091c7810da346a06a3d4d8e02ded726ef2acba2bdf626e5bb331/choose-0.2.6.tar.gz" } ], "0.2.7": [ { "comment_text": "", "digests": { "md5": "7f80228f5fb6d6621b077cc07dd7a3f7", "sha256": "aaa8f5e74e9c46e7826d62caef3f964761de4d2e85de8b71043be1e8d32f9054" }, "downloads": -1, "filename": "choose-0.2.7.tar.gz", "has_sig": false, "md5_digest": "7f80228f5fb6d6621b077cc07dd7a3f7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2328, "upload_time": "2016-04-23T18:18:14", "url": "https://files.pythonhosted.org/packages/49/df/bb1f52d4d53f1a200785f013369265341bff79f4081fcc6bfa59a63f0ce7/choose-0.2.7.tar.gz" } ], "0.2.8": [ { "comment_text": "", "digests": { "md5": "47e3d36c40e76773708f937c242e284e", "sha256": "bd2381c31fe9f063d00c82f591efc76d8abc7a52610e4c829a99b7eb60e8759f" }, "downloads": -1, "filename": "choose-0.2.8.tar.gz", "has_sig": false, "md5_digest": "47e3d36c40e76773708f937c242e284e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2627, "upload_time": "2016-06-16T06:38:26", "url": "https://files.pythonhosted.org/packages/40/5e/c509b7f7fa3626e0a72a91c44dd41e43a5cc2af7cb38f2e392b9ab8b9e50/choose-0.2.8.tar.gz" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "13590ef2688808dc15eeaf2198c4cb9a", "sha256": "9bc4a06480b20fc8a72373b721598097fd84e4ef53f6068a9343ec37ab04da8c" }, "downloads": -1, "filename": "choose-1.0.0.tar.gz", "has_sig": false, "md5_digest": "13590ef2688808dc15eeaf2198c4cb9a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3232, "upload_time": "2017-04-10T09:04:48", "url": "https://files.pythonhosted.org/packages/70/8e/131082d324a4a4dc5a910a547bfca136850ddaf489fee6d24a2be07bd5aa/choose-1.0.0.tar.gz" } ], "2.0.0": [ { "comment_text": "", "digests": { "md5": "6fea7c15e1a4bfd24aaea00e33bdef23", "sha256": "f76cca6b36f2fe5410ad19af5820f13497cfc3e46dbf4cd93a91152371d36744" }, "downloads": -1, "filename": "choose-2.0.0.tar.gz", "has_sig": false, "md5_digest": "6fea7c15e1a4bfd24aaea00e33bdef23", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2797, "upload_time": "2017-06-30T09:32:23", "url": "https://files.pythonhosted.org/packages/f6/ce/a8bb6d21461b34c0782307fa401389b90649b4ac4b2f23fbb926266cd438/choose-2.0.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "6fea7c15e1a4bfd24aaea00e33bdef23", "sha256": "f76cca6b36f2fe5410ad19af5820f13497cfc3e46dbf4cd93a91152371d36744" }, "downloads": -1, "filename": "choose-2.0.0.tar.gz", "has_sig": false, "md5_digest": "6fea7c15e1a4bfd24aaea00e33bdef23", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2797, "upload_time": "2017-06-30T09:32:23", "url": "https://files.pythonhosted.org/packages/f6/ce/a8bb6d21461b34c0782307fa401389b90649b4ac4b2f23fbb926266cd438/choose-2.0.0.tar.gz" } ] }