# paper-admin-permission-field
Permission field implementation tailored for paper-admin.
[](https://pypi.org/project/paper-admin-permission-field/)
[](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:

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[](https://pypi.org/project/paper-admin-permission-field/)\n[](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\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"
}