paper-admin-permission-field


Namepaper-admin-permission-field JSON
Version 0.0.1 PyPI version JSON
download
home_pagehttps://github.com/dldevinc/paper-admin-permission-field
SummaryPermissionField implementation tailored for paper-admin
upload_time2024-05-25 12:01:54
maintainerMihail Mishakin
docs_urlNone
authorMihail Mishakin
requires_python>=3.7
licenseBSD license
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # paper-admin-permission-field

Permission field implementation tailored for paper-admin.

[![PyPI](https://img.shields.io/pypi/v/paper-admin-permission-field.svg)](https://pypi.org/project/paper-admin-permission-field/)
[![Software license](https://img.shields.io/pypi/l/paper-admin-permission-field.svg)](https://pypi.org/project/paper-admin-permission-field/)

## Compatibility

-   `python` >= 3.7
-   `django` >= 3.2
-   `paper-admin` >= `7.7.0`

## Installation

Install the latest release with pip:

```shell
pip install paper-admin-permission-field
```

## Usage

```python
# custom_users/admin.py

from django import forms
from django.contrib import admin
from django.contrib.auth.admin import GroupAdmin, UserAdmin
from django.contrib.auth.forms import UserChangeForm
from django.contrib.auth.models import Group, Permission, User

from paper_permission_field.forms import PermissionsField


class GroupAdminForm(forms.ModelForm):
    permissions = PermissionsField(
        required=False,
        queryset=Permission.objects.all()
    )

    class Meta:
        model = Group
        fields = forms.ALL_FIELDS


class CustomUserChangeForm(UserChangeForm):
    user_permissions = PermissionsField(
        required=False,
        queryset=Permission.objects.all()
    )


class CustomGroupAdmin(GroupAdmin):
    form = GroupAdminForm


class CustomUserAdmin(UserAdmin):
    form = CustomUserChangeForm


admin.site.unregister(User)
admin.site.unregister(Group)
admin.site.register(User, CustomUserAdmin)
admin.site.register(Group, CustomGroupAdmin)
```

Result:

![image](https://github.com/dldevinc/paper-admin-permission-field/assets/6928240/43fb89df-ef4f-4791-b22f-484baec83cf5)

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/dldevinc/paper-admin-permission-field",
    "name": "paper-admin-permission-field",
    "maintainer": "Mihail Mishakin",
    "docs_url": null,
    "requires_python": ">=3.7",
    "maintainer_email": "x896321475@gmail.com",
    "keywords": null,
    "author": "Mihail Mishakin",
    "author_email": "x896321475@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/31/44/b2a75cee05ad1135706bda90f336ada1be337ec6f198c5df1b013c21898b/paper_admin_permission_field-0.0.1.tar.gz",
    "platform": "OS Independent",
    "description": "# paper-admin-permission-field\n\nPermission field implementation tailored for paper-admin.\n\n[![PyPI](https://img.shields.io/pypi/v/paper-admin-permission-field.svg)](https://pypi.org/project/paper-admin-permission-field/)\n[![Software license](https://img.shields.io/pypi/l/paper-admin-permission-field.svg)](https://pypi.org/project/paper-admin-permission-field/)\n\n## Compatibility\n\n-   `python` >= 3.7\n-   `django` >= 3.2\n-   `paper-admin` >= `7.7.0`\n\n## Installation\n\nInstall the latest release with pip:\n\n```shell\npip install paper-admin-permission-field\n```\n\n## Usage\n\n```python\n# custom_users/admin.py\n\nfrom django import forms\nfrom django.contrib import admin\nfrom django.contrib.auth.admin import GroupAdmin, UserAdmin\nfrom django.contrib.auth.forms import UserChangeForm\nfrom django.contrib.auth.models import Group, Permission, User\n\nfrom paper_permission_field.forms import PermissionsField\n\n\nclass GroupAdminForm(forms.ModelForm):\n    permissions = PermissionsField(\n        required=False,\n        queryset=Permission.objects.all()\n    )\n\n    class Meta:\n        model = Group\n        fields = forms.ALL_FIELDS\n\n\nclass CustomUserChangeForm(UserChangeForm):\n    user_permissions = PermissionsField(\n        required=False,\n        queryset=Permission.objects.all()\n    )\n\n\nclass CustomGroupAdmin(GroupAdmin):\n    form = GroupAdminForm\n\n\nclass CustomUserAdmin(UserAdmin):\n    form = CustomUserChangeForm\n\n\nadmin.site.unregister(User)\nadmin.site.unregister(Group)\nadmin.site.register(User, CustomUserAdmin)\nadmin.site.register(Group, CustomGroupAdmin)\n```\n\nResult:\n\n![image](https://github.com/dldevinc/paper-admin-permission-field/assets/6928240/43fb89df-ef4f-4791-b22f-484baec83cf5)\n",
    "bugtrack_url": null,
    "license": "BSD license",
    "summary": "PermissionField implementation tailored for paper-admin",
    "version": "0.0.1",
    "project_urls": {
        "Homepage": "https://github.com/dldevinc/paper-admin-permission-field"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "fcd998609230fc1256d2ec42cd11873b1f9f18927159b854e2a0068801848c9d",
                "md5": "e0bdb1265434945997c2a2325da1a5c8",
                "sha256": "2907dba91d465a4a8f4ac58fb5b6ae04d66bf7eee5a3a6c525b9436b2fa34acd"
            },
            "downloads": -1,
            "filename": "paper_admin_permission_field-0.0.1-py2.py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "e0bdb1265434945997c2a2325da1a5c8",
            "packagetype": "bdist_wheel",
            "python_version": "py2.py3",
            "requires_python": ">=3.7",
            "size": 4079,
            "upload_time": "2024-05-25T12:01:52",
            "upload_time_iso_8601": "2024-05-25T12:01:52.293809Z",
            "url": "https://files.pythonhosted.org/packages/fc/d9/98609230fc1256d2ec42cd11873b1f9f18927159b854e2a0068801848c9d/paper_admin_permission_field-0.0.1-py2.py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "3144b2a75cee05ad1135706bda90f336ada1be337ec6f198c5df1b013c21898b",
                "md5": "2ac5851658abb24bf5a753022d950616",
                "sha256": "de07869a02ef6bbf460deea1fcb107b8ae7524e90bbafaaa868bec804eb414ca"
            },
            "downloads": -1,
            "filename": "paper_admin_permission_field-0.0.1.tar.gz",
            "has_sig": false,
            "md5_digest": "2ac5851658abb24bf5a753022d950616",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7",
            "size": 4385,
            "upload_time": "2024-05-25T12:01:54",
            "upload_time_iso_8601": "2024-05-25T12:01:54.021925Z",
            "url": "https://files.pythonhosted.org/packages/31/44/b2a75cee05ad1135706bda90f336ada1be337ec6f198c5df1b013c21898b/paper_admin_permission_field-0.0.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-05-25 12:01:54",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "dldevinc",
    "github_project": "paper-admin-permission-field",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [],
    "tox": true,
    "lcname": "paper-admin-permission-field"
}
        
Elapsed time: 0.60741s