{ "info": { "author": "Diederik van der Boor", "author_email": "opensource@edoburu.nl", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Web Environment", "Framework :: Django", "Intended Audience :: Developers", "License :: OSI Approved :: Apache Software License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Topic :: Internet :: WWW/HTTP", "Topic :: Internet :: WWW/HTTP :: Dynamic Content", "Topic :: Software Development :: Libraries :: Application Frameworks", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "django-parler-rest\n==================\n\n.. image:: https://travis-ci.org/django-parler/django-parler-rest.svg?branch=master\n :target: http://travis-ci.org/django-parler/django-parler-rest\n.. image:: https://img.shields.io/pypi/v/django-parler-rest.svg\n :target: https://pypi.python.org/pypi/django-parler-rest/\n.. image:: https://img.shields.io/pypi/l/django-parler-rest.svg\n :target: https://pypi.python.org/pypi/django-parler-rest/\n.. image:: https://img.shields.io/codecov/c/github/django-parler/django-parler-rest/master.svg\n :target: https://codecov.io/github/django-parler/django-parler-rest?branch=master\n\nAdding translation support to django-rest-framework_.\n\nThis package adds support for TranslatableModels from django-parler_ to django-rest-framework_.\n\n\nInstallation\n============\n\n::\n\n pip install django-parler-rest\n\nUsage\n=====\n\n* First make sure you have django-parler_ installed and configured.\n* Use the serializers as demonstrated below to expose the translations.\n\nFirst configure a model, following the `django-parler documentation `_:\n\n.. code-block:: python\n\n from django.db import models\n from parler.models import TranslatableModel, TranslatedFields\n\n\n class Country(TranslatableModel):\n \"\"\"\n Country database model.\n \"\"\"\n\n country_code = models.CharField(_(\"Country code\"), unique=True, db_index=True)\n\n translations = TranslatedFields(\n name = models.CharField(_(\"Name\"), max_length=200)\n url = models.URLField(_(\"Webpage\"), max_length=200, blank=True)\n )\n\n class Meta:\n verbose_name = _(\"Country\")\n verbose_name_plural = _(\"Countries\")\n\n def __unicode__(self):\n return self.name\n\n\nThe model translations can be exposed as a separate serializer:\n\n.. code-block:: python\n\n from rest_framework import serializers\n from parler_rest.serializers import TranslatableModelSerializer, TranslatedFieldsField\n from .models import Country # Example model\n\n\n class CountrySerializer(TranslatableModelSerializer):\n translations = TranslatedFieldsField(shared_model=Country)\n\n class Meta:\n model = Country\n fields = ('id', 'country_code', 'translations')\n\n\n.. note:: The ``TranslatedFieldsField`` can only be used in a serializer that inherits from ``TranslatableModelSerializer``.\n\n\nThis will expose the fields as a separate dictionary in the JSON output:\n\n.. code-block:: application/json\n\n {\n \"id\": 528,\n \"country_code\": \"NL\",\n \"translations\": {\n \"nl\": {\n \"name\": \"Nederland\",\n \"url\": \"http://nl.wikipedia.org/wiki/Nederland\"\n },\n \"en\": {\n \"name\": \"Netherlands\",\n \"url\": \"http://en.wikipedia.org/wiki/Netherlands\"\n },\n \"de\" {\n \"name\": \"Niederlande\",\n \"url\": \"http://de.wikipedia.org/wiki/Niederlande\"\n }\n }\n }\n\n\nContributing\n============\n\nThis module is designed to be generic. In case there is anything you didn't like about it,\nor think it's not flexible enough, please let us know. We'd love to improve it!\n\nIf you have any other valuable contribution, suggestion or idea,\nplease let us know as well because we will look into it.\nPull requests are welcome too. :-)\n\nRunning tests\n-------------\n\nTests are run with `py.test`::\n\n python setup.py test # install dependencies and run tests with coverage\n\n\n.. _django-parler: https://github.com/django-parler/django-parler\n.. _django-rest-framework: http://www.django-rest-framework.org/\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "https://github.com/edoburu/django-parler-rest/zipball/master", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/edoburu/django-parler-rest", "keywords": "", "license": "Apache 2.0", "maintainer": "", "maintainer_email": "", "name": "django-parler-rest", "package_url": "https://pypi.org/project/django-parler-rest/", "platform": "", "project_url": "https://pypi.org/project/django-parler-rest/", "project_urls": { "Download": "https://github.com/edoburu/django-parler-rest/zipball/master", "Homepage": "https://github.com/edoburu/django-parler-rest" }, "release_url": "https://pypi.org/project/django-parler-rest/2.0/", "requires_dist": [ "django-parler (>=1.9.2)", "djangorestframework (>=3.5)" ], "requires_python": "", "summary": "Multilingual support for django-rest-framework", "version": "2.0" }, "last_serial": 5576904, "releases": { "1.2.0": [ { "comment_text": "", "digests": { "md5": "99953143054141f544f1c9dff8521021", "sha256": "4bb255832bb8c4066aef0d07abce62d9366e7faa029c3cda0426f3c33436da63" }, "downloads": -1, "filename": "django_parler_rest-1.2.0-py2-none-any.whl", "has_sig": false, "md5_digest": "99953143054141f544f1c9dff8521021", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 7865, "upload_time": "2015-01-29T10:35:29", "url": "https://files.pythonhosted.org/packages/54/71/e54fbf9d35aa3fc38e9ecdcb47e48e980df87351ab79eb7169cf3b086146/django_parler_rest-1.2.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "050f5e6298ecac08365d9c30abda68eb", "sha256": "52f9358d2b8caff77f975d6b2f9c2e6ac7e94d9017804064665001217250ab4f" }, "downloads": -1, "filename": "django-parler-rest-1.2.0.tar.gz", "has_sig": false, "md5_digest": "050f5e6298ecac08365d9c30abda68eb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9149, "upload_time": "2015-01-29T10:35:26", "url": "https://files.pythonhosted.org/packages/a9/05/c8df13d371ed9c12b780da25dfee239a00464d8cdb480c77d1b6a6bd85db/django-parler-rest-1.2.0.tar.gz" } ], "1.2.1": [ { "comment_text": "", "digests": { "md5": "f7c98ed1a85b32d10eafc1e17f31aeae", "sha256": "3395c5360ab0eaa3c176d801e62967bafca38e0bb120efdbea45e5a3badcbdff" }, "downloads": -1, "filename": "django_parler_rest-1.2.1-py2-none-any.whl", "has_sig": false, "md5_digest": "f7c98ed1a85b32d10eafc1e17f31aeae", "packagetype": "bdist_wheel", "python_version": "2.6", "requires_python": null, "size": 7886, "upload_time": "2015-02-10T17:53:45", "url": "https://files.pythonhosted.org/packages/c1/4c/ea525d890d41d50151a4e5ae6702480d3b9e0eeee43b794d4e9a692041c8/django_parler_rest-1.2.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f2e90cbd0955e839a5ce14e2c19b8b8c", "sha256": "0a8e0f0736712fd71dfbc49daa1b8808399079a9c3e8adcf26fe86915108bd09" }, "downloads": -1, "filename": "django-parler-rest-1.2.1.tar.gz", "has_sig": false, "md5_digest": "f2e90cbd0955e839a5ce14e2c19b8b8c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9073, "upload_time": "2015-02-10T17:53:42", "url": "https://files.pythonhosted.org/packages/a8/63/d8171c1e0663e0687a9ef148ff823325fceb18c0efd6b2d1a6df2dc27f11/django-parler-rest-1.2.1.tar.gz" } ], "1.3": [ { "comment_text": "", "digests": { "md5": "392a9be2b15c25d76362fb5dfb3edc7f", "sha256": "87c5c1c3e1cd200f30a329d03da96d4b42aa815004c66ccddc4718177f76626b" }, "downloads": -1, "filename": "django_parler_rest-1.3-py2-none-any.whl", "has_sig": false, "md5_digest": "392a9be2b15c25d76362fb5dfb3edc7f", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 9020, "upload_time": "2015-12-16T16:27:14", "url": "https://files.pythonhosted.org/packages/e4/33/489efecd7c87faed6d0b83cfd43e330c2875646f23691c4dd9490c4e5d43/django_parler_rest-1.3-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c8ab700d801e1abdb948e9855909f63d", "sha256": "7d9df5b848d373eec0bc440d8838f698f201d51d0e1a619ad67fee8e558ba1e4" }, "downloads": -1, "filename": "django-parler-rest-1.3.tar.gz", "has_sig": false, "md5_digest": "c8ab700d801e1abdb948e9855909f63d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10349, "upload_time": "2015-12-16T16:27:09", "url": "https://files.pythonhosted.org/packages/27/bc/71609d0b4aaedf4edf30628beb53ae8d2ded9cd25db0b1ee2aa4db5aa58f/django-parler-rest-1.3.tar.gz" } ], "1.3b1": [ { "comment_text": "", "digests": { "md5": "95cf7e5d658ec7734db00093a06f8bac", "sha256": "b7ce3827621fd373af3671820cc93b745be1cc261002a721ac068a4bfe177299" }, "downloads": -1, "filename": "django_parler_rest-1.3b1-py2-none-any.whl", "has_sig": false, "md5_digest": "95cf7e5d658ec7734db00093a06f8bac", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 8720, "upload_time": "2015-07-20T13:14:34", "url": "https://files.pythonhosted.org/packages/89/cb/4fb3ee4e55b8bfd7546bd3e06b8990aca0399d32996c79392b19317905f0/django_parler_rest-1.3b1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3170a704126d08baffb7a7e141ce3bb8", "sha256": "acafd670ad95ff99f1b3da1d0ff3fda63b116fe4a1b6a1c680d1a79e35f1bd3a" }, "downloads": -1, "filename": "django-parler-rest-1.3b1.tar.gz", "has_sig": false, "md5_digest": "3170a704126d08baffb7a7e141ce3bb8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11078, "upload_time": "2015-07-20T13:14:31", "url": "https://files.pythonhosted.org/packages/16/5a/758bba02630f5a03c7144772a1c55bd5827af40b540ad9948d154927ae92/django-parler-rest-1.3b1.tar.gz" } ], "1.4": [ { "comment_text": "", "digests": { "md5": "91a99eee4c4eed772f97c3f4e8d571c4", "sha256": "1bdc132c6514d6e86bc86f93b4b261b60256e4184c33493f5ce4190b44b19ed2" }, "downloads": -1, "filename": "django_parler_rest-1.4-py2-none-any.whl", "has_sig": false, "md5_digest": "91a99eee4c4eed772f97c3f4e8d571c4", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 9384, "upload_time": "2016-05-04T08:52:28", "url": "https://files.pythonhosted.org/packages/c6/75/4b81dfcc2678c98db194adc140a6e2e3914f5f3e363eba63f71de2f273a5/django_parler_rest-1.4-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "93f26cebf5f9c05dd91f94d75a77d94f", "sha256": "d545ec503adeca010eba7fe37ba57f4c9665da381023e235489049992ca5bc5b" }, "downloads": -1, "filename": "django-parler-rest-1.4.tar.gz", "has_sig": false, "md5_digest": "93f26cebf5f9c05dd91f94d75a77d94f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12090, "upload_time": "2016-05-04T08:52:58", "url": "https://files.pythonhosted.org/packages/0e/9f/bd1a8f3ecef3d7e810f059793ee7c34149a3a87eea371c0fd637f8cc1036/django-parler-rest-1.4.tar.gz" } ], "1.4.1": [ { "comment_text": "", "digests": { "md5": "989df0c466a53536f22602ebd9272ebf", "sha256": "f7f4866f037d6b85c50ae4df1196fc080904423a72c10a4437f82341e64d517a" }, "downloads": -1, "filename": "django_parler_rest-1.4.1-py2-none-any.whl", "has_sig": false, "md5_digest": "989df0c466a53536f22602ebd9272ebf", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 9472, "upload_time": "2016-06-02T19:13:42", "url": "https://files.pythonhosted.org/packages/99/ea/e4b125632110eedbc44fa90b3de17d74836bf4d6dea77bb0d7d3a6106b56/django_parler_rest-1.4.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b8e491cd7896274ee578391f7a4b00ac", "sha256": "7cc80b8f708bf685eb0d0d97597efdfa6d370fe0fd2a08e8962fdfccdd991d77" }, "downloads": -1, "filename": "django-parler-rest-1.4.1.tar.gz", "has_sig": false, "md5_digest": "b8e491cd7896274ee578391f7a4b00ac", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12165, "upload_time": "2016-06-02T19:13:48", "url": "https://files.pythonhosted.org/packages/a1/8e/1e9d4f21fe2f8b537321e175ba08120bcbdbcbaa0956efa5d18203bc58db/django-parler-rest-1.4.1.tar.gz" } ], "1.4.2": [ { "comment_text": "", "digests": { "md5": "01de38c47f385e9c60f8af36c77fa274", "sha256": "c6cd32a86a9606fa1c4a76d5aa925abb95d92b7c9dd82535932acc8624598d79" }, "downloads": -1, "filename": "django_parler_rest-1.4.2-py2-none-any.whl", "has_sig": false, "md5_digest": "01de38c47f385e9c60f8af36c77fa274", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 9573, "upload_time": "2016-06-17T18:45:24", "url": "https://files.pythonhosted.org/packages/d9/fe/7dfe091cd89bf76103ad71a43b0089e1a5a63d5b23ef35f8d9aaea6284fc/django_parler_rest-1.4.2-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "170fbe6e3926d3604a844e8259cec51a", "sha256": "d173c9f02b605a89e1bae7183af641a50647cfe8188f79fef740d9706ebd02c3" }, "downloads": -1, "filename": "django_parler_rest-1.4.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "170fbe6e3926d3604a844e8259cec51a", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 9577, "upload_time": "2016-06-17T18:45:54", "url": "https://files.pythonhosted.org/packages/61/23/60ed36881e6d32f4c58af14af9cbe1f0687a55869807f598a8f8ee98cd13/django_parler_rest-1.4.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a75779833aff68d8350dc21b6fa3bc9a", "sha256": "41387f9133fb1becade2d38c2aad02681bf382136eccabdba3b612d5128d38c5" }, "downloads": -1, "filename": "django-parler-rest-1.4.2.tar.gz", "has_sig": false, "md5_digest": "a75779833aff68d8350dc21b6fa3bc9a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12233, "upload_time": "2016-06-17T18:45:28", "url": "https://files.pythonhosted.org/packages/60/94/c7d3d3420561f637df2d2af19b2e81dbd3e58a015b909e62db46b348cc94/django-parler-rest-1.4.2.tar.gz" } ], "2.0": [ { "comment_text": "", "digests": { "md5": "3798e70ee8a5e01dd2c48319a46e3f1d", "sha256": "fa5d6b8b10ba5c3cf80bbf57302456838595f3c6b90087c1013000ac02c9ba37" }, "downloads": -1, "filename": "django_parler_rest-2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "3798e70ee8a5e01dd2c48319a46e3f1d", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 7016, "upload_time": "2018-09-10T11:25:14", "url": "https://files.pythonhosted.org/packages/24/88/1d9be74228db2b5d6882c6c2712404603b40b552a8b0de3f0b49ea1bf700/django_parler_rest-2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "97815bb26f04731e91f6fd8851a13806", "sha256": "4dbf7a74ecb0e9ed89bcc612ad8effd8b33c9c2d82d998a1b4aeae18869d9a0a" }, "downloads": -1, "filename": "django-parler-rest-2.0.tar.gz", "has_sig": false, "md5_digest": "97815bb26f04731e91f6fd8851a13806", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10832, "upload_time": "2018-09-10T11:25:15", "url": "https://files.pythonhosted.org/packages/47/97/770e53a7465a74d087610c258018f7285929676a44a50740daf28450c17d/django-parler-rest-2.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "3798e70ee8a5e01dd2c48319a46e3f1d", "sha256": "fa5d6b8b10ba5c3cf80bbf57302456838595f3c6b90087c1013000ac02c9ba37" }, "downloads": -1, "filename": "django_parler_rest-2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "3798e70ee8a5e01dd2c48319a46e3f1d", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 7016, "upload_time": "2018-09-10T11:25:14", "url": "https://files.pythonhosted.org/packages/24/88/1d9be74228db2b5d6882c6c2712404603b40b552a8b0de3f0b49ea1bf700/django_parler_rest-2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "97815bb26f04731e91f6fd8851a13806", "sha256": "4dbf7a74ecb0e9ed89bcc612ad8effd8b33c9c2d82d998a1b4aeae18869d9a0a" }, "downloads": -1, "filename": "django-parler-rest-2.0.tar.gz", "has_sig": false, "md5_digest": "97815bb26f04731e91f6fd8851a13806", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10832, "upload_time": "2018-09-10T11:25:15", "url": "https://files.pythonhosted.org/packages/47/97/770e53a7465a74d087610c258018f7285929676a44a50740daf28450c17d/django-parler-rest-2.0.tar.gz" } ] }