Metadata-Version: 2.1
Name: django-fastadmin
Version: 0.7.4
Summary: django admin extensions.
Home-page: UNKNOWN
Author: zencore
Author-email: dobetter@zencore.cn
License: MIT
Keywords: django admin extentions
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: Django
Requires-Dist: django-apiview (>=0.9.27)
Requires-Dist: django-middleware-global-request (>=0.2.0)
Requires-Dist: django-static-ace-builds (>=1.4.12.0)
Requires-Dist: django-static-fontawesome (>=5.14.0.0)
Requires-Dist: django-static-jquery3 (>=5.1.0)
Requires-Dist: fastutils
Requires-Dist: magic-import (>=0.1.3)

# django-fastadmin

django admin extensions.

## Install

```shell
pip install django-fastadmin
```

## Usage

**pro/settings.py**

```
INSTALLED_APPS = [
    ...
    "django_static_jquery3",
    "django_static_ace_builds",
    "django_apiview",
    'django_fastadmin',
    ...
]
```

- Add dependence package names in INSTALLED_APPS.


## Installed Admin Extensions

### Admin extends

- AddAdminViewHelper
- DisableAddPermissionMixin
- DisableChangePermissionMixin
- DisableDeleteActionMixin
- DisableDeletePermissionMixin
- DisableInlineEditingInAddingMixin
- DjangoDynamicMediaAdmin
- DjangoObjectToolbarAdmin
- DjangoSortableAdmin
- DjangoWithExtraContextAdmin
- EditablePasswordField
- ExtraViewsAdmin
- HiddenFieldsAdmin
- HideShowField
- HideShowFieldsOnValueAdmin
- InlineBooleanFieldsAllowOnlyOneCheckedMixin
- InlineEditingHideOriginalMixin
- InlineUniqueChoiceFieldsMixin
- MarkPermissionsMixin
- ResetToRandomPasswordField
- SetTopModelAdmin
- TextFieldAutoHeightMixin
- TextFieldSetRowColumnMixin
- ToggleFieldStateAdmin
- UuidFieldSearchableAdmin
- WithDisplayFieldsMixin

### Widgets

- AceWidget
- TitleToCodeWidget

### Forms

### Filters


## admin.InlineBooleanFieldsAllowOnlyOneCheckedMixin Usage

- `django_static_jquery3` required in INSTALLED_APPS.
- Add this mixin to inline class, and put it before TabularInline.
- Add classes property
    - Add class InlineBooleanFieldsAllowOnlyOneCheckedMixin.special_class_name
    - Add class InlineBooleanFieldsAllowOnlyOneCheckedMixin.field_name_prefix + {field name},
- Example:
    ```
    from django.contrib import admin
    from django_fastadmin.admin import InlineBooleanFieldsAllowOnlyOneCheckedMixin

    from .models import Book
    from .models import Category

    class BookInline(InlineBooleanFieldsAllowOnlyOneCheckedMixin, admin.TabularInline):
        model = Book
        extra = 0
        classes = [
            InlineBooleanFieldsAllowOnlyOneCheckedMixin.special_class_name,
            InlineBooleanFieldsAllowOnlyOneCheckedMixin.field_name_prefix + "is_best_seller",
            ]


    class CategoryAdmin(admin.ModelAdmin):
        inlines = [
            BookInline,
        ]

    admin.site.register(Category, CategoryAdmin)
    ```



## widget.AceWidget Usage

- `django_static_jquery3` and `django_static_ace_builds` required in INSTALLED_APPS.
- Create a model_form, and set the admin's form to the model_form.
- Set the field to use AceWidget in the model_form.
- Example:
```
class BookModelForm(forms.ModelForm):
    class Meta:
        model = Book
        fields = "__all__"
        widgets = {
            "description": AceWidget(ace_options={
                "mode": "ace/mode/yaml",
                "theme": "ace/theme/twilight",
            }),
        }

class BookAdmin(admin.ModelAdmin):
    form = BookModelForm
    list_display = ["title", "published"]

```

## Releases


| Release | Time | Changes                                                     | Notice |
| ------ | ---------- | ---------------------------------------------------------------- | ---- |
| v0.1.0 | 2020/08/12 | 1. First release.<br />2. Add UuidFieldSearchableAdmin.<br />3. Add InlineBooleanFieldsAllowOnlyOneCheckedMixin. | |
| v0.1.1 | 2020/08/13 | 4. Fix jquery.js and jquery.init.js including orders, so that we don't need to change js plugin's source to use django.jQuery. | |
| v0.2.0 | 2020/08/25 | 5. Add widgets.AceWidget. | |
| v0.3.0 | 2020/09/01 | 6. Change the directory structure of static files.<br />7. Add models.SimpleTask. It's an abstract model.<br />8. jQuery and jQuery plugins are moved to django-static-jquery3>=5.0.0. | |
| v0.3.1 | 2020/09/01 | 9. Rename zh_hans to zh_Hans.<br />10. Depends on django-db-lock>=0.3.1.<br />11. Add django-static-xxx depends. | **No deps on django-db-lock** |
| v0.3.2 | 2020/09/08 | 12. Add SimpleTaskService.<br />13. Move service functions from model to service.<br />14. Upgrade django_db_lock depends. | |
| v0.4.0 | 2020/09/23 | 15. Add widgets.TitleToCodeWidget.<br />16. Add models.SimplePublishModel.<br />17. Add many admin mixins.<br />18. Add app_requires. | **SimplePublishModel removed.** |
| v0.5.0 | 2020/10/01 | 19. Add admin.AddAdminViewHelper.<br />20. Add admin.ToggleFieldStateAdmin.<br />21. Add admin.SimplePublishModelAdmin.<br />22. Add admin.SetTopModelAdmin. | |
| v0.6.0 | 2020/10/13 | 23. Add admin.DjangoAdminGlobalMedia.<br />24. Add admin.DjangoWithExtraContextAdmin.<br />25. Add admin.DjangoDynamicMediaAdmin.<br />26. Add admin.HiddenFieldsAdmin.<br />27. Add admin.HideShowFieldsOnValueAdmin.<br />28. Add admin.DjangoObjectToolbarAdmin.<br />29. Add admin.DjangoSortableAdmin.<br />30. Add depends. | |
| v0.6.1 | 2020/10/21 | 31. Upgrade django-db-lock, fix missing requests in setup problem. | |
| v0.6.2 | 2020/10/24 | 32. Fix DjangoWithExtraContextAdmin problem. | |
| v0.7.0 | 2020/10/27 | 33. Remove abstract models, so that django_fastadmin can forcus on admin extensions.<br />34. SimpleTask moved to django_simpletask.<br />35. SimplePublishModel and SimplePublishModelAdmin moved to django_simple_publish_model. | |
| v0.7.1 | 2020/11/08 | 36. Fix missing django-static-ace-builds problem. | |
| v0.7.2 | 2021/04/13 | 37. Fix InlineModelAdmin.has_add_permission(...) has obj paramter in Django 3.2 problem.<br />38. Test in Django 3.2. | |
| v0.7.3 | 2021/04/15 | 39. Rename AddAdminViewHelper to ExtraViewsAdmin.<br />40. ExtraViewsAdmin make define view function easy.<br />41. DjangoObjectToolbarAdmin make define button function easy.<br />42. DjangoSortableAdmin using ExtraViewsAdmin easier way to define move-up and move-down button views. | |
| v0.7.4 | 2021/06/09 | 43. We are not care about the version of fastutils, so let the end user to choose. | |


