{ "info": { "author": "Dylan Verheul", "author_email": "dylan@dyve.net", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Web Environment", "Framework :: Django", "Intended Audience :: Developers", "License :: OSI Approved :: Apache Software License", "Operating System :: OS Independent", "Programming Language :: Python", "Topic :: Software Development :: Libraries", "Topic :: Utilities" ], "description": "Class based permissions for Django models\n=========================================\n\nSimple class based permissions.\n\n\nInstallation\n------------\n1. Install using pip::\n\n pip install django-perm\n\n2. In settings.py::\n\n # Add to INSTALLED_APPS\n 'perm',\n\n # Add to AUTHENTICATION_BACKENDS\n 'perm.backends.ModelPermissionBackend',\n\n3. In your main urls.py, at the end add::\n\n # Load django-perm\n urlpatterns += patterns('', url('^/perm/', include('perm.urls')))\n\n\nUsage\n-----\n\nIn your Django app, create a file ``permissions.py``. Its content might look like this::\n\n from perm.decorators import permissions_for\n from perm.permissions import ModelPermissions\n\n from .models import Foo\n\n\n @permissions_for(Foo)\n class FooPermissions(ModelPermissions):\n\n def has_perm_wiggle(self):\n # Let's ask the Foo object\n return self.obj.user_can_wiggle(self.user)\n\n def get_queryset_perm_change(self):\n # Foo objects can be changed by their owners\n return Foo.objects.filter(user=self.user)\n\n\nQuestions\n---------\n\nDo you have a question about ``django-perm``? Please ask it on StackOverflow.com so others can help out and/or learn. Tag your question ``django-perm`` if possible.\n\nhttp://stackoverflow.com/\n\n\nBugs and requests\n-----------------\n\nIf you have found a bug or a request for additional functionality, please use the issue tracker on GitHub.\n\nhttps://github.com/dyve/django-perm/issues\n\n\nAbout\n-----\n\n``django-perm`` is written by Dylan Verheul (dylan@dyve.net).\n\n\nLicense\n-------\n\nYou can use this under Apache 2.0. See LICENSE file for details.\n", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/dyve/django-perm", "keywords": null, "license": "Apache License 2.0", "maintainer": null, "maintainer_email": null, "name": "django-perm", "package_url": "https://pypi.org/project/django-perm/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/django-perm/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/dyve/django-perm" }, "release_url": "https://pypi.org/project/django-perm/2.5.0/", "requires_dist": null, "requires_python": null, "summary": "Class based Django permissions for Django models.", "version": "2.5.0" }, "last_serial": 1524252, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "5f4aa5e7cccb92bb94e262170abaaae9", "sha256": "be80ce5a5736a5c4574c94ff5dee28de3459f6c8b03ad515e0b99ab30031865e" }, "downloads": -1, "filename": "django-perm-0.1.0.tar.gz", "has_sig": false, "md5_digest": "5f4aa5e7cccb92bb94e262170abaaae9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5205, "upload_time": "2013-05-07T09:07:28", "url": "https://files.pythonhosted.org/packages/1a/23/d5eb4011fe7923a464c4fd64601382b2868f9380107f97fad8a295543f1a/django-perm-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "8e1437dbfea773b3b59373eb7b274c2d", "sha256": "465a9cf5001bdb0aaa2af4b24939b81a6f3f4e82a796c2354a5fdbc8dfda38f8" }, "downloads": -1, "filename": "django-perm-0.1.1.tar.gz", "has_sig": false, "md5_digest": "8e1437dbfea773b3b59373eb7b274c2d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5208, "upload_time": "2013-05-07T09:10:37", "url": "https://files.pythonhosted.org/packages/cd/79/7e54e151e7dbdcd172e9799988978051de2c1b8a1128480a0cb508991162/django-perm-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "0e3c11acd1245aef95f3550645ad496c", "sha256": "c6c4923c29ca67019a5bc9a80ad552b9549896c5f932b10444cd655690000a89" }, "downloads": -1, "filename": "django-perm-0.1.2.tar.gz", "has_sig": false, "md5_digest": "0e3c11acd1245aef95f3550645ad496c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5246, "upload_time": "2013-05-07T10:26:35", "url": "https://files.pythonhosted.org/packages/5e/de/36dcc9aeba808ce4a422e3495da5effbd71f93dd42934f12abad79d26946/django-perm-0.1.2.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "f830b82b4a37988f6404c680c6aaa2d9", "sha256": "306f697b40e791b04a12e980c2a3811b611688c88832bdf783439aa26830106e" }, "downloads": -1, "filename": "django-perm-0.2.0.tar.gz", "has_sig": false, "md5_digest": "f830b82b4a37988f6404c680c6aaa2d9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5344, "upload_time": "2013-06-13T07:23:06", "url": "https://files.pythonhosted.org/packages/83/87/4b9312dc497053c46a9d3f1167920b62f7c9aa69150e3440010bedeefca5/django-perm-0.2.0.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "3df952f8bc0c5b37e3dc6de933029c9a", "sha256": "96a8654a377f29c8224a6f5230b1aa29c8b990244d78f1c408d0d6ae78723023" }, "downloads": -1, "filename": "django-perm-0.3.0.tar.gz", "has_sig": false, "md5_digest": "3df952f8bc0c5b37e3dc6de933029c9a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5453, "upload_time": "2013-06-18T09:28:04", "url": "https://files.pythonhosted.org/packages/fe/8b/e34d6353a550400db02b92003887ebd94781c848d2877372efbec58ad4c8/django-perm-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "66b9d3d2cc12f0d2b9042262b095e34d", "sha256": "5dd4a3726c23177e77e9bccd65caead34b06c5fb52609067b455fb8566cff110" }, "downloads": -1, "filename": "django-perm-0.3.1.tar.gz", "has_sig": false, "md5_digest": "66b9d3d2cc12f0d2b9042262b095e34d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5457, "upload_time": "2013-07-02T11:11:04", "url": "https://files.pythonhosted.org/packages/9d/2b/b5a4f8c1ce0193cdd4af4db61f080e20da93b919b0a230b21e6319b95b4d/django-perm-0.3.1.tar.gz" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "55f0eeb91f612a3fac7bad01d3478a71", "sha256": "9e608c4c14262f3709f2a5e30f0b7514caa64a2a386b2fa54dab8ce2765ed7c4" }, "downloads": -1, "filename": "django-perm-1.0.0.tar.gz", "has_sig": false, "md5_digest": "55f0eeb91f612a3fac7bad01d3478a71", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5569, "upload_time": "2013-07-12T07:23:11", "url": "https://files.pythonhosted.org/packages/ee/27/88050b0211ce347c53d51804ed75789b9d23a5a6433a4a0793fd5facad79/django-perm-1.0.0.tar.gz" } ], "1.2.0": [ { "comment_text": "", "digests": { "md5": "ec2e3b6cda62ff44d394fe02ee735b0d", "sha256": "5df05e519daf85b36cc94af96c906fd12634f49eb710e562a6024ccf61740dcf" }, "downloads": -1, "filename": "django-perm-1.2.0.tar.gz", "has_sig": false, "md5_digest": "ec2e3b6cda62ff44d394fe02ee735b0d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6526, "upload_time": "2013-09-11T11:23:40", "url": "https://files.pythonhosted.org/packages/f0/ed/50d045c3ef8a2cb11c4c6b897cf7c646fd81c667009490d43a7f2d311790/django-perm-1.2.0.tar.gz" } ], "1.3.0": [ { "comment_text": "", "digests": { "md5": "ebe1066599f91e2fa062dbea0fa92648", "sha256": "c76f688ef8d60c226c0ef66c5a73b01c6a56aa37e27d38871eee21d3cc7c0f86" }, "downloads": -1, "filename": "django-perm-1.3.0.tar.gz", "has_sig": false, "md5_digest": "ebe1066599f91e2fa062dbea0fa92648", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6539, "upload_time": "2013-09-11T14:32:10", "url": "https://files.pythonhosted.org/packages/21/2d/7914d21e6eba0cd7be932fdea56f9a43ed5df7e4b16072578f319a517e51/django-perm-1.3.0.tar.gz" } ], "1.3.1": [ { "comment_text": "", "digests": { "md5": "94d1291796a9ea5b475565d7f4245062", "sha256": "83028158e11854b829cf593cb2e6eb502971c4dbe0960de049084adf26fdb3d4" }, "downloads": -1, "filename": "django-perm-1.3.1.tar.gz", "has_sig": false, "md5_digest": "94d1291796a9ea5b475565d7f4245062", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6541, "upload_time": "2013-09-11T14:35:31", "url": "https://files.pythonhosted.org/packages/fb/7a/6b09fffd4271c921db3d72a246dd9e823329f40824d62550edba3ccb7989/django-perm-1.3.1.tar.gz" } ], "1.3.2": [ { "comment_text": "", "digests": { "md5": "4f363179a058fca76f0fc1e2f9a7ff1c", "sha256": "092cd28b134bbe01e8cc414eae160872cea05df54b82b46c193a9e8dfeca5acf" }, "downloads": -1, "filename": "django-perm-1.3.2.tar.gz", "has_sig": false, "md5_digest": "4f363179a058fca76f0fc1e2f9a7ff1c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6538, "upload_time": "2013-12-18T07:55:43", "url": "https://files.pythonhosted.org/packages/2f/b2/74e5fc03a696ca6bc626a57e2b6e11b2f0a9c5196add6117428e54dc7021/django-perm-1.3.2.tar.gz" } ], "1.4.0": [ { "comment_text": "", "digests": { "md5": "e5b8695dd724a39c967377c70a4fa452", "sha256": "f6ba1907bff01e0ecedc200e9673b25b69a6daf4a3f7a9d9654bc589843d62cd" }, "downloads": -1, "filename": "django-perm-1.4.0.tar.gz", "has_sig": false, "md5_digest": "e5b8695dd724a39c967377c70a4fa452", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6628, "upload_time": "2014-01-23T07:02:58", "url": "https://files.pythonhosted.org/packages/4a/ad/57e89c13a3711e94b1454bbd012a0130dfe460a626e7f65849bf7041cbd8/django-perm-1.4.0.tar.gz" } ], "2.0.0": [ { "comment_text": "", "digests": { "md5": "b5d7d931e6d37f3835d14213139391e4", "sha256": "6365ccf6e225b10d8d080406ecddc336dada9be644e2030c07abb46dbd06581c" }, "downloads": -1, "filename": "django-perm-2.0.0.tar.gz", "has_sig": false, "md5_digest": "b5d7d931e6d37f3835d14213139391e4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6354, "upload_time": "2014-05-21T07:05:19", "url": "https://files.pythonhosted.org/packages/8f/cb/4720b06c50cf924ebb0ca589023d4a7d97e9f1d72edd7a5915b1a332576b/django-perm-2.0.0.tar.gz" } ], "2.0.1": [ { "comment_text": "", "digests": { "md5": "7974766a6a085d0cddbe3cca7295cd58", "sha256": "188215d78f1f46366604bfe5d059e574780061b7b511acad66bb76e73050c5ba" }, "downloads": -1, "filename": "django-perm-2.0.1.tar.gz", "has_sig": false, "md5_digest": "7974766a6a085d0cddbe3cca7295cd58", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5897, "upload_time": "2014-05-21T07:21:40", "url": "https://files.pythonhosted.org/packages/de/0c/e9f4f20609190cb10f71ef2243dcddc8219ee2472a2c09df3268953798ee/django-perm-2.0.1.tar.gz" } ], "2.1.0": [ { "comment_text": "", "digests": { "md5": "1d99421f32f3539f37690338f95f4450", "sha256": "bc6061a01ea6feeb40b83eb412f3833f844bc7ce1ca2772341c9b78f04ecb664" }, "downloads": -1, "filename": "django-perm-2.1.0.tar.gz", "has_sig": false, "md5_digest": "1d99421f32f3539f37690338f95f4450", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6014, "upload_time": "2014-05-21T08:17:17", "url": "https://files.pythonhosted.org/packages/01/82/a04b52665e91eccf32ba8ac3468228475e52e27239970ec7d0971becf491/django-perm-2.1.0.tar.gz" } ], "2.2.0": [ { "comment_text": "", "digests": { "md5": "b4d1db8653b69358326c1481e53fc375", "sha256": "15f035272c87c664b9276c771113d4d873ad3139f1121e77ec0ee9bb496922c7" }, "downloads": -1, "filename": "django-perm-2.2.0.tar.gz", "has_sig": false, "md5_digest": "b4d1db8653b69358326c1481e53fc375", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7449, "upload_time": "2014-08-28T10:15:43", "url": "https://files.pythonhosted.org/packages/02/13/0bf9d2fa727abe7bd6a5b96de463ed0243362ecf487a04ba9fb816f7c675/django-perm-2.2.0.tar.gz" } ], "2.2.1": [ { "comment_text": "", "digests": { "md5": "e996ae96ea92f07cd632372603319550", "sha256": "c38e5b08bc2d77a7e511f6b895e7ba08c215e88757d3e4c7d64d200436a3bf78" }, "downloads": -1, "filename": "django-perm-2.2.1.tar.gz", "has_sig": false, "md5_digest": "e996ae96ea92f07cd632372603319550", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7555, "upload_time": "2014-08-28T11:06:01", "url": "https://files.pythonhosted.org/packages/23/67/8c0f295bcb9d154290fbcadae3de9817e6580128e4f37c24954220a15ae4/django-perm-2.2.1.tar.gz" } ], "2.3.0": [ { "comment_text": "", "digests": { "md5": "705e2a0eab91a9cdb33e678fa1a6850a", "sha256": "07460e0b45c0377647139db5bdbd0e260c962e595604d50384f1538142eec626" }, "downloads": -1, "filename": "django-perm-2.3.0.tar.gz", "has_sig": false, "md5_digest": "705e2a0eab91a9cdb33e678fa1a6850a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7563, "upload_time": "2014-12-08T08:27:16", "url": "https://files.pythonhosted.org/packages/47/04/f6676cc5882e52f4444159d46f20ea7e15f78efcc1c2810b93b3d9139eb6/django-perm-2.3.0.tar.gz" } ], "2.4.0": [ { "comment_text": "", "digests": { "md5": "cc9d296aa07576f6033c54013398414b", "sha256": "c42663181805abd883ec0fca20287185e5b8a7aa94aa404b0b37bac3ab8d86f9" }, "downloads": -1, "filename": "django-perm-2.4.0.tar.gz", "has_sig": false, "md5_digest": "cc9d296aa07576f6033c54013398414b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8044, "upload_time": "2014-12-15T10:08:14", "url": "https://files.pythonhosted.org/packages/8c/90/68f2cbed7811219e0f67111375c1127ae08a1bdceed73f00061c7b754979/django-perm-2.4.0.tar.gz" } ], "2.4.1": [ { "comment_text": "", "digests": { "md5": "5959b90c665f28bc03576370153f8daa", "sha256": "0b6b6cc9ef68214ca20ac5f9225b5322c083c7a693f912260bbde754606a1968" }, "downloads": -1, "filename": "django-perm-2.4.1.tar.gz", "has_sig": false, "md5_digest": "5959b90c665f28bc03576370153f8daa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8030, "upload_time": "2014-12-15T10:18:18", "url": "https://files.pythonhosted.org/packages/9a/98/3eb70618845b8161fc708e9e4256ae80404dd71e7a49e8937477d66aba02/django-perm-2.4.1.tar.gz" } ], "2.5.0": [ { "comment_text": "", "digests": { "md5": "4ab7d0690b5b8cce5845445c22a57383", "sha256": "28643d12701d1b34c1f73cf98834a8763765e657783cde727ccc06347ddda33c" }, "downloads": -1, "filename": "django-perm-2.5.0.tar.gz", "has_sig": false, "md5_digest": "4ab7d0690b5b8cce5845445c22a57383", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8098, "upload_time": "2015-04-28T10:19:25", "url": "https://files.pythonhosted.org/packages/a1/dc/3f9bfff8ca9c03fc73e65a5ece8f31fa6abdf8e14bd06b3555ae1d03e00c/django-perm-2.5.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "4ab7d0690b5b8cce5845445c22a57383", "sha256": "28643d12701d1b34c1f73cf98834a8763765e657783cde727ccc06347ddda33c" }, "downloads": -1, "filename": "django-perm-2.5.0.tar.gz", "has_sig": false, "md5_digest": "4ab7d0690b5b8cce5845445c22a57383", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8098, "upload_time": "2015-04-28T10:19:25", "url": "https://files.pythonhosted.org/packages/a1/dc/3f9bfff8ca9c03fc73e65a5ece8f31fa6abdf8e14bd06b3555ae1d03e00c/django-perm-2.5.0.tar.gz" } ] }