{ "info": { "author": "Pablo Martin", "author_email": "goinnn@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Framework :: Django", "License :: OSI Approved :: GNU Library or Lesser General Public License (LGPL)", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6" ], "description": "django-multiselectfield\n=======================\n\n.. image:: https://travis-ci.org/idenfy/django-multiselectfield.svg?branch=master\n :target: https://travis-ci.org/idenfy/django-multiselectfield\n\n.. image:: https://coveralls.io/repos/github/idenfy/django-multiselectfield/badge.svg?branch=master\n :target: https://coveralls.io/github/idenfy/django-multiselectfield?branch=master\n\n\n.. image:: https://badge.fury.io/py/django-multipleselectfield.png\n :target: https://badge.fury.io/py/django-multipleselectfield\n\nA new model field and form field. With this you can get a multiple select from a choices. Stores to the database as a CharField of comma-separated values.\n\nThis package is inspired by this `snippet `_.\n\nSupported Python versions: 2.7, 3.4+\n\nSupported Django versions: 1.11-2.1+\n\nInstallation\n============\n\n\nInstall with pip\n----------------\n\n.. code-block:: bash\n\n $ pip install django-multipleselectfield\n\nConfigure your models.py\n------------------------\n\n.. code-block:: python\n\n from multiselectfield import MultiSelectField\n\n # ...\n\n MY_CHOICES = (('item_key1', 'Item title 1.1'),\n ('item_key2', 'Item title 1.2'),\n ('item_key3', 'Item title 1.3'),\n ('item_key4', 'Item title 1.4'),\n ('item_key5', 'Item title 1.5'))\n\n MY_CHOICES2 = ((1, 'Item title 2.1'),\n (2, 'Item title 2.2'),\n (3, 'Item title 2.3'),\n (4, 'Item title 2.4'),\n (5, 'Item title 2.5'))\n\n class MyModel(models.Model):\n\n # .....\n\n my_field = MultiSelectField(choices=MY_CHOICES)\n my_field2 = MultiSelectField(choices=MY_CHOICES2,\n max_choices=3,\n max_length=3)\n\n\nIn your settings.py\n-------------------\n\nOnly you need it, if you want the translation of django-multiselectfield\n\n.. code-block:: python\n\n INSTALLED_APPS = (\n 'django.contrib.auth',\n 'django.contrib.contenttypes',\n 'django.contrib.sessions',\n 'django.contrib.sites',\n 'django.contrib.admin',\n\n #.....................#\n\n 'multiselectfield',\n )\n\n\nCustomizing templates\n---------------------\n\nIt is possible to customize the HTML of this widget in your form template. To do so, you will need to loop through ``form.{field}.field.choices``. Here is an example that displays the field label underneath/after the checkbox for a ``MultiSelectField`` called ``providers``:\n\n.. code-block:: HTML+Django\n\n {% for value, text in form.providers.field.choices %}\n
\n \n \n
\n {% endfor %}\n\n\nDjango REST Framework\n---------------------\n\nDjango REST Framework comes with a ``MultipleChoiceField`` that works perfectly with this:\n\n.. code-block:: python\n\n from rest_framework import fields, serializers\n\n from myapp.models import MY_CHOICES, MY_CHOICES2\n\n class MyModelSerializer(serializers.HyperlinkedModelSerializer):\n # ...\n my_field = fields.MultipleChoiceField(choices=MY_CHOICES)\n my_field2 = fields.MultipleChoiceField(choices=MY_CHOICES2)\n # ...\n\n\nDevelopment\n===========\n\nYou can get the last bleeding edge version of django-multiselectfield by doing a clone of its git repository:\n\n.. code-block:: bash\n\n git clone https://github.com/idenfy/django-multiselectfield\n\n\nExample project\n===============\n\nThere is a fully configured example project in the `example directory `_. You can run it as usual:\n\n.. code-block:: bash\n\n python manage.py migrate\n python manage.py loaddata app_data\n python manage.py runserver\n\n\n0.2.0 (2017-05-10)\n------------------\n\n* Added support for Django 2.0+\n* Added support for Python 3.7\n\n0.1.6 (2017-05-10)\n------------------\n\n* Added support for Django 1.11\n* Added support for Python 3.6\n* Improved rendering in Django admin\n* Improved documentation\n* Thanks to:\n * `atten `_\n * `ixc `_\n * `LeilaniAnn `_\n\n0.1.5 (2017-01-02)\n------------------\n\n* Added support for Django 1.8-1.10\n* Added support for named groups in choices\n* Added support for min_choices argument\n* Various fixes\n* More tests\n* Thanks to:\n * `danilogbotelho `_\n * `dmitry-krasilnikov `_\n * `Kamil D\u0119bowski `_\n\n0.1.4 (2016-02-23)\n------------------\n\n* Fixed warning about SubfieldBase\n* Added support for Django 1.8+\n* Added support for named groups\n* We now play nice with django-dynamic-fixture\n* More tests\n\n0.1.3 (2014-10-13)\n------------------\n\n* Support to Django 1.7 (I'm sorry to the delay)\n* Adding get_FIELD_list function\n* Fix an error when a MultiSelectField was reandonly at the admin site\n* Thanks to:\n * `Hernil `_\n * `Vasyl Stanislavchuk `_\n * `Litchfield `_\n * `Chris-erickson `_\n\n0.1.2 (2014-04-04)\n------------------\n\n* Include the spanish translations to the pypi egg\n* Improvements in the readme file\n* Windows OS compatibility\n* Thanks to:\n * `StillNewb `_\n * `Diego Yungh `_\n\n0.1.1 (2013-12-04)\n------------------\n* Move the multiselectfield app to parent folder\n* Details\n\n0.1.0 (2013-11-30)\n------------------\n\n* Test/example project\n* Now works if the first composant of the list of tuple is an integer\n* Now max_length is not required, the Multiselect field calculate it automatically. \n* The max_choices attr can be a attr in the model field\n* Refactor the code\n* Spanish translations\n* Support to python2.6\n* Thanks to:\n * `Daniele Procida `_\n\n0.0.3 (2013-09-11)\n------------------\n\n* Python 3 compatible\n* Fix an error, the snippet had another error when the choices were translatables\n* Improvements in the README file\n\n\n0.0.2 (2012-09-28)\n------------------\n\n* Fix an error, the snippet had an error.\n\n0.0.1 (2012-09-27)\n------------------\n\n* Initial version from the next `snippet `_\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/goinnn/django-multiselectfield", "keywords": "django,multiple,select,field,choices", "license": "LGPL 3", "maintainer": "", "maintainer_email": "", "name": "django-multipleselectfield", "package_url": "https://pypi.org/project/django-multipleselectfield/", "platform": "", "project_url": "https://pypi.org/project/django-multipleselectfield/", "project_urls": { "Homepage": "https://github.com/goinnn/django-multiselectfield" }, "release_url": "https://pypi.org/project/django-multipleselectfield/0.2.0.post2/", "requires_dist": [ "django (>=1.11)" ], "requires_python": "", "summary": "Django multiple select field", "version": "0.2.0.post2" }, "last_serial": 4782781, "releases": { "0.2.0.post1": [ { "comment_text": "", "digests": { "md5": "f741a29237264a8095fd66be7874e813", "sha256": "d597be771c3f7005a5319add05affc9f1bc91f429461b8ffd4a343877e5cadc3" }, "downloads": -1, "filename": "django_multipleselectfield-0.2.0.post1-py3-none-any.whl", "has_sig": false, "md5_digest": "f741a29237264a8095fd66be7874e813", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 13783, "upload_time": "2019-02-05T16:06:48", "url": "https://files.pythonhosted.org/packages/42/7b/d0759a6e82682c8dab3e7283a95d653d780f0b476488eff50f294118c768/django_multipleselectfield-0.2.0.post1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bd2371a899caec5d378d613b279c1b3b", "sha256": "58a048fa020e4bf90ec9e3d88e206b58261ea17b930c469b633c8082963b92ca" }, "downloads": -1, "filename": "django-multipleselectfield-0.2.0.post1.tar.gz", "has_sig": false, "md5_digest": "bd2371a899caec5d378d613b279c1b3b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12738, "upload_time": "2019-02-05T16:06:51", "url": "https://files.pythonhosted.org/packages/59/e4/9452739798ac371a9a2cd86499534bd5ba3104e0ffd3ca3f7fe61360f3c2/django-multipleselectfield-0.2.0.post1.tar.gz" } ], "0.2.0.post2": [ { "comment_text": "", "digests": { "md5": "6ec23eeee7ef4fcac37d53deb40ce700", "sha256": "9761564547301024913db225b17a5bd4b8a70ec9c1d76e9f87308793c99de1ef" }, "downloads": -1, "filename": "django_multipleselectfield-0.2.0.post2-py3-none-any.whl", "has_sig": false, "md5_digest": "6ec23eeee7ef4fcac37d53deb40ce700", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 13797, "upload_time": "2019-02-05T16:08:38", "url": "https://files.pythonhosted.org/packages/c6/f8/6da42f2b5b8f2f0791fad51696f8406f84386a425a886adac8d8a633ceeb/django_multipleselectfield-0.2.0.post2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "687efea8dde2122709a95f0367c00cce", "sha256": "a0b20f68c8f61fa48ff1b85f2f3c90d71f38eecd0ff187c20400e1eda47f7afc" }, "downloads": -1, "filename": "django-multipleselectfield-0.2.0.post2.tar.gz", "has_sig": false, "md5_digest": "687efea8dde2122709a95f0367c00cce", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12801, "upload_time": "2019-02-05T16:08:40", "url": "https://files.pythonhosted.org/packages/81/b8/94c770fd77316bd9d35bb608baf112692bb0b51baad478a0a3c2d8ce84c8/django-multipleselectfield-0.2.0.post2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "6ec23eeee7ef4fcac37d53deb40ce700", "sha256": "9761564547301024913db225b17a5bd4b8a70ec9c1d76e9f87308793c99de1ef" }, "downloads": -1, "filename": "django_multipleselectfield-0.2.0.post2-py3-none-any.whl", "has_sig": false, "md5_digest": "6ec23eeee7ef4fcac37d53deb40ce700", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 13797, "upload_time": "2019-02-05T16:08:38", "url": "https://files.pythonhosted.org/packages/c6/f8/6da42f2b5b8f2f0791fad51696f8406f84386a425a886adac8d8a633ceeb/django_multipleselectfield-0.2.0.post2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "687efea8dde2122709a95f0367c00cce", "sha256": "a0b20f68c8f61fa48ff1b85f2f3c90d71f38eecd0ff187c20400e1eda47f7afc" }, "downloads": -1, "filename": "django-multipleselectfield-0.2.0.post2.tar.gz", "has_sig": false, "md5_digest": "687efea8dde2122709a95f0367c00cce", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12801, "upload_time": "2019-02-05T16:08:40", "url": "https://files.pythonhosted.org/packages/81/b8/94c770fd77316bd9d35bb608baf112692bb0b51baad478a0a3c2d8ce84c8/django-multipleselectfield-0.2.0.post2.tar.gz" } ] }