{ "info": { "author": "Gregory N. Schmit", "author_email": "schmitgreg@gmail.com", "bugtrack_url": null, "classifiers": [ "Environment :: Web Environment", "Framework :: Django", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3" ], "description": "Action Serializer\n=================\n\n.. image:: https://travis-ci.org/gregschmit/drf-action-serializer.svg?branch=master\n :alt: TravisCI\n :target: https://travis-ci.org/gregschmit/drf-action-serializer\n\n.. image:: https://img.shields.io/pypi/v/drf-action-serializer\n :alt: PyPI\n :target: https://pypi.org/project/drf-action-serializer/\n\n.. image:: https://coveralls.io/repos/github/gregschmit/drf-action-serializer/badge.svg?branch=master\n :alt: Coveralls\n :target: https://coveralls.io/github/gregschmit/drf-action-serializer?branch=master\n\n.. image:: https://img.shields.io/badge/code%20style-black-000000.svg\n :alt: Code Style\n :target: https://github.com/ambv/black\n\nSource: https://github.com/gregschmit/drf-action-serializer\n\nPyPI: https://pypi.org/project/drf-action-serializer/\n\nAction Serializer is a Django Rest Framework extension package that provides a\nSerializer that implements per-action field configuration for use in your drf-powered\nAPI.\n\n**The Problem**: When building APIs, often you want different serializers for different\nactions, such as less fields on a list view vs a detail view. Normally you would have to\nbuild multiple Serializers to support this.\n\n**The Solution**: This app provides the ``ModelActionSerializer`` which allows you to\neasily configure per-action serialization.\n\n\nHow to Use\n==========\n\n.. code-block:: shell\n\n $ pip install drf-action-serializer\n\nIn your serializer, inherit from ``action_serializer.ModelActionSerializer``.\n\nIn your serializer, you can add an ``action_fields`` dictionary to the ``Meta`` class\nand use ``fields``, ``exclude``, and ``extra_kwargs`` under the action key. The example\nin this project shows how to render a smaller list of attributes for a list view\ncompared to the detail view.\n\n.. code-block:: python\n\n from django.contrib.auth.models import Group\n from action_serializer import ModelActionSerializer\n\n\n class GroupActionSerializer(ModelActionSerializer):\n \"\"\"\n An example serializer for the Django ``Group`` model, where the ``list`` action\n causes less fields to be serialized than normal.\n \"\"\"\n\n class Meta:\n model = Group\n fields = (\"id\", \"name\", \"permissions\")\n action_fields = {\"list\": {\"fields\": (\"id\", \"name\")}}\n\nIn your ViewSet, just set the serializer like normal:\n\n.. code-block:: python\n\n from rest_framework.viewsets import ModelViewSet\n\n\n class GroupViewSet(ModelViewSet):\n \"\"\"\n An example viewset for the Django ``Group`` model.\n \"\"\"\n\n serializer_class = GroupActionSerializer\n queryset = Group.objects.all()\n\n\nTests\n=====\n\n.. code-block:: shell\n\n $ python manage.py test\n\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/gregschmit/drf-action-serializer", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "drf-action-serializer", "package_url": "https://pypi.org/project/drf-action-serializer/", "platform": "", "project_url": "https://pypi.org/project/drf-action-serializer/", "project_urls": { "Homepage": "https://github.com/gregschmit/drf-action-serializer" }, "release_url": "https://pypi.org/project/drf-action-serializer/1.0.5/", "requires_dist": [ "Django (>=2)", "djangorestframework (>=3)" ], "requires_python": "", "summary": "A serializer that handles field configuration with multiple actions from ViewSets.", "version": "1.0.5" }, "last_serial": 5830194, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "1385601eca4ad07acc8e4b9d560efb0d", "sha256": "0321ba240f9e2959ba4bfc80e9acf3698601979fbaf814004e1b530c689cfd7e" }, "downloads": -1, "filename": "drf_action_serializer-0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "1385601eca4ad07acc8e4b9d560efb0d", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 8919, "upload_time": "2019-07-28T19:27:34", "url": "https://files.pythonhosted.org/packages/2e/9b/58c78ee58a8553f12892b2bf7ed1455286678b73a6a39296a861e2a8067e/drf_action_serializer-0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "62dc1e348692bade8b523fe4b4337794", "sha256": "4e64a63fab98c6c80b1fec3b216457e3ce423c48b4ee20575ef0ef99cd1377aa" }, "downloads": -1, "filename": "drf-action-serializer-0.1.tar.gz", "has_sig": false, "md5_digest": "62dc1e348692bade8b523fe4b4337794", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6521, "upload_time": "2019-07-28T19:27:37", "url": "https://files.pythonhosted.org/packages/dd/8a/133ffe26f3c38cdf68aea8a369fbe8ca69214031d95add240dfef94cd3ee/drf-action-serializer-0.1.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "26deb7d4c6a5e242051a199390b5fa65", "sha256": "e287750b1bef47166922f0f53801bf45ba189da88b0b48d7bcb33371827258e4" }, "downloads": -1, "filename": "drf_action_serializer-0.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "26deb7d4c6a5e242051a199390b5fa65", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 8901, "upload_time": "2019-07-28T22:29:03", "url": "https://files.pythonhosted.org/packages/41/b2/a3294031e8ace13ef2d603ca4739725434b86481c78913104b7ccf048918/drf_action_serializer-0.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "4d3d8e7a884f309d220ce7cd63d33669", "sha256": "2e42395ff057cf816e1bef64a69322b7147273bb76f86bd01287fec026875fb0" }, "downloads": -1, "filename": "drf-action-serializer-0.1.1.tar.gz", "has_sig": false, "md5_digest": "4d3d8e7a884f309d220ce7cd63d33669", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6475, "upload_time": "2019-07-28T22:29:05", "url": "https://files.pythonhosted.org/packages/2c/3c/0116ca46792d7fbe962f4e4e247882438b839992cecdd5552902873952c9/drf-action-serializer-0.1.1.tar.gz" } ], "1.0": [ { "comment_text": "", "digests": { "md5": "3188f6dbeff2f3a9bcd81ed0a8f2f9d3", "sha256": "01d854fd5befee5173fdf3e41d4bbc8855001038fe4a8df65f64ab6b140f087d" }, "downloads": -1, "filename": "drf_action_serializer-1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "3188f6dbeff2f3a9bcd81ed0a8f2f9d3", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 10215, "upload_time": "2019-07-29T23:42:51", "url": "https://files.pythonhosted.org/packages/73/dc/f89fd30322aa95f1dbca86c655f6509b8eeb5ee343bc2128eddcd5087583/drf_action_serializer-1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "05e3786d991c870a40720a072f2d82ef", "sha256": "6db929917f17051d88c5affdb6940cd2236363e35c6dbf26c08f9279d1bc524a" }, "downloads": -1, "filename": "drf-action-serializer-1.0.tar.gz", "has_sig": false, "md5_digest": "05e3786d991c870a40720a072f2d82ef", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7862, "upload_time": "2019-07-29T23:42:52", "url": "https://files.pythonhosted.org/packages/d0/22/f6306e4537d2dae5bc64982eb900ac5e1ed3ced597fd4001897cd43e7d2c/drf-action-serializer-1.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "daf60975eeda2b3ea092ab1aa39a0d0d", "sha256": "2fd0074c0d64bc6ef1f0e625c3b4f15da6ceffc22b4bd74b376338f4d0b80c43" }, "downloads": -1, "filename": "drf_action_serializer-1.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "daf60975eeda2b3ea092ab1aa39a0d0d", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 8889, "upload_time": "2019-08-04T05:48:12", "url": "https://files.pythonhosted.org/packages/95/4c/7e1d66c4df57dda12a745d235e2dc53ec62bec04eb947a99030badab62d9/drf_action_serializer-1.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8ebed270f85fbb4cd68c60ce077f2830", "sha256": "9a4eaac1dc454f0890626d4325a6baf2bafcaf468d701d2e4e34279a95925076" }, "downloads": -1, "filename": "drf-action-serializer-1.0.1.tar.gz", "has_sig": false, "md5_digest": "8ebed270f85fbb4cd68c60ce077f2830", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6434, "upload_time": "2019-08-04T05:48:13", "url": "https://files.pythonhosted.org/packages/64/44/bbe1d5faaa5a98b911d684ec4a7cb70d04096ffa9a603d4ea0a971b9ea8c/drf-action-serializer-1.0.1.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "0e8b8641be357480620165a70bfa6d08", "sha256": "0df34fe8c5d115e6d32cbe1189899e8149f01f85224218c366aa9c74902d865c" }, "downloads": -1, "filename": "drf_action_serializer-1.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "0e8b8641be357480620165a70bfa6d08", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 8871, "upload_time": "2019-08-04T05:55:54", "url": "https://files.pythonhosted.org/packages/b0/cf/f003b559cfb8bef343a7828b3a7b9c89ed7f996b543d8379f13c833a4b0a/drf_action_serializer-1.0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "930173f31e42da6e25f4089ae64f7f7a", "sha256": "b89182e523f6476be2c9fcebafbade5f3c7c9d0d0e9c6a4f0cc2415bba66c48e" }, "downloads": -1, "filename": "drf-action-serializer-1.0.2.tar.gz", "has_sig": false, "md5_digest": "930173f31e42da6e25f4089ae64f7f7a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6417, "upload_time": "2019-08-04T05:55:55", "url": "https://files.pythonhosted.org/packages/5e/28/86842caf3e72d9208b1506300b8fd67daacf8693ff688468a3065d7164a1/drf-action-serializer-1.0.2.tar.gz" } ], "1.0.3": [ { "comment_text": "", "digests": { "md5": "ebb8c3b7c32e1e0971027ee6ace2b59c", "sha256": "099249b7e28392d8663bb90c6ca8001e49af569afad76194dde66a62cfa8a36d" }, "downloads": -1, "filename": "drf_action_serializer-1.0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "ebb8c3b7c32e1e0971027ee6ace2b59c", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 8913, "upload_time": "2019-09-14T20:06:13", "url": "https://files.pythonhosted.org/packages/82/78/e8cab71549a84bd706d67630ba7db488e7cbd3900fafc0fc805bde64710b/drf_action_serializer-1.0.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e1539e5d24a295de5e9fdd3bb3798e85", "sha256": "9300997a15fb8aed1216a654f3184b8a6d5fa0a20ab5cfa99f451f01f5d0e714" }, "downloads": -1, "filename": "drf-action-serializer-1.0.3.tar.gz", "has_sig": false, "md5_digest": "e1539e5d24a295de5e9fdd3bb3798e85", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6461, "upload_time": "2019-09-14T20:06:15", "url": "https://files.pythonhosted.org/packages/63/bf/f6a46a17ef54e4e403c36dee3b54790459b896786cb98a25c1b22c8c3237/drf-action-serializer-1.0.3.tar.gz" } ], "1.0.4": [ { "comment_text": "", "digests": { "md5": "610195aa0b87716febbe0302b5099890", "sha256": "034db679a498670e47504d9f76df6d6e83622c03dd91a46d5a8ede26bb81a4eb" }, "downloads": -1, "filename": "drf_action_serializer-1.0.4-py3-none-any.whl", "has_sig": false, "md5_digest": "610195aa0b87716febbe0302b5099890", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 8723, "upload_time": "2019-09-14T20:43:55", "url": "https://files.pythonhosted.org/packages/9d/f9/9d2a2fd687114e322d88213004f4ff1f4b90f51283940b6ca6ceee7fde93/drf_action_serializer-1.0.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "93b2ee520964255c805eaa5d98d0da94", "sha256": "56fd12765ce0da4be11c18cae2eb4d37cea8301eb76fb8c5fa9c1c86d18366fd" }, "downloads": -1, "filename": "drf-action-serializer-1.0.4.tar.gz", "has_sig": false, "md5_digest": "93b2ee520964255c805eaa5d98d0da94", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6271, "upload_time": "2019-09-14T20:43:57", "url": "https://files.pythonhosted.org/packages/27/e4/b2b1b63b9cade3ad1042ea35bec6e38f7749589a56ee60ded3560c909070/drf-action-serializer-1.0.4.tar.gz" } ], "1.0.5": [ { "comment_text": "", "digests": { "md5": "2c2974f1a3adaa8b9d8c8b61a587e120", "sha256": "961c66008a01705eaaa9a4bf5f04405f16346c4886f6ec6ecf3bce7f1247c856" }, "downloads": -1, "filename": "drf_action_serializer-1.0.5-py3-none-any.whl", "has_sig": false, "md5_digest": "2c2974f1a3adaa8b9d8c8b61a587e120", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 8726, "upload_time": "2019-09-14T20:49:10", "url": "https://files.pythonhosted.org/packages/0e/b3/bcd8c9ea9f3097e66f0ec1d28c5ac603b2623e49512903ddb6b6445336bb/drf_action_serializer-1.0.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e0945680fdd2355b9234cc09f1263508", "sha256": "a51944824eae98bfb02005014db31aeaf33c943fc4ab92d11c8c01203eb582a9" }, "downloads": -1, "filename": "drf-action-serializer-1.0.5.tar.gz", "has_sig": false, "md5_digest": "e0945680fdd2355b9234cc09f1263508", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6288, "upload_time": "2019-09-14T20:49:12", "url": "https://files.pythonhosted.org/packages/91/b5/4f52ee51a3f012cd5614d4979278cd20996b34bb67bf84f36479f54305c6/drf-action-serializer-1.0.5.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "2c2974f1a3adaa8b9d8c8b61a587e120", "sha256": "961c66008a01705eaaa9a4bf5f04405f16346c4886f6ec6ecf3bce7f1247c856" }, "downloads": -1, "filename": "drf_action_serializer-1.0.5-py3-none-any.whl", "has_sig": false, "md5_digest": "2c2974f1a3adaa8b9d8c8b61a587e120", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 8726, "upload_time": "2019-09-14T20:49:10", "url": "https://files.pythonhosted.org/packages/0e/b3/bcd8c9ea9f3097e66f0ec1d28c5ac603b2623e49512903ddb6b6445336bb/drf_action_serializer-1.0.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e0945680fdd2355b9234cc09f1263508", "sha256": "a51944824eae98bfb02005014db31aeaf33c943fc4ab92d11c8c01203eb582a9" }, "downloads": -1, "filename": "drf-action-serializer-1.0.5.tar.gz", "has_sig": false, "md5_digest": "e0945680fdd2355b9234cc09f1263508", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6288, "upload_time": "2019-09-14T20:49:12", "url": "https://files.pythonhosted.org/packages/91/b5/4f52ee51a3f012cd5614d4979278cd20996b34bb67bf84f36479f54305c6/drf-action-serializer-1.0.5.tar.gz" } ] }