معرفی شرکت ها


django-mcadmin-0.9.9


Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر

توضیحات

Easily run Django management commands from admin
ویژگی مقدار
سیستم عامل -
نام فایل django-mcadmin-0.9.9
نام django-mcadmin
نسخه کتابخانه 0.9.9
نگهدارنده []
ایمیل نگهدارنده []
نویسنده Alexei Andrushievich
ایمیل نویسنده vint21h@vint21h.pp.ua
آدرس صفحه اصلی https://github.com/vint21h/django-mcadmin
آدرس اینترنتی https://pypi.org/project/django-mcadmin/
مجوز GPLv3+
.. django-mcadmin .. README.rst A django-mcadmin documentation ============================== |GitHub|_ |Coveralls|_ |pypi-license|_ |pypi-version|_ |pypi-python-version|_ |pypi-django-version|_ |pypi-format|_ |pypi-wheel|_ |pypi-status|_ *django-mcadmin is a Django reusable app that provides simple run management commands from admin* .. contents:: Installation ------------ * Obtain your copy of source code from the git repository: ``$ git clone https://github.com/vint21h/django-mcadmin.git``. Or download the latest release from https://github.com/vint21h/django-mcadmin/tags/. * Run ``$ python ./setup.py install`` from the repository source tree or unpacked archive. Or use pip: ``$ pip install django-mcadmin``. Configuration ------------- * Add ``"mcadmin"`` to ``settings.INSTALLED_APPS``: .. code-block:: python # settings.py INSTALLED_APPS += [ "mcadmin", ] * Add ``"mcadmin"`` to your URLs definitions: .. code-block:: python # urls.py from django.urls import re_path, include urlpatterns += [ re_path(r"^admin/mcadmin/", include("mcadmin.urls")), ] * Run ``$ python ./manage.py migrate`` in your project folder to apply app migrations. Settings -------- ``MCADMIN_EXAMPLES_PATH`` Management commands files templates path. Defaults to: ``settings.STATIC_ROOT``. ``MCADMIN_UPLOADS_PATH`` Management commands forms with files upload path. Defaults to: ``settings.MEDIA_ROOT``. ``MCADMIN_MODULE_NAME`` Management commands admin classes search module name. Defaults to: ``"mcommands"``. ``MCADMIN_USE_PERMISSIONS`` Management commands admin classes search module name. Defaults to: ``False``. Usage ----- For example, exists management command like this: .. code-block:: python # management/commands/something-useless.py from django.core.management.base import BaseCommand class Command(BaseCommand): help: str = "Useless management command" def add_arguments(self, parser): parser.add_argument( "--object-id", "-o", dest="object_id", help="Object ID", action="store", required=True, metavar="OBJECT_ID", type=int, ) def handle(self, *args, **kwargs): self.stdout.write(kwargs.get("object_id")) Next, you need to create a form for this management command admin which we use in the next piece of code: .. code-block:: python # forms.py from django import forms class SomethingUselessManagementCommandAdminForm(forms.Form): object_id = forms.IntegerField(label="Object ID", required=True) And finally, write management command admin class and register it: .. code-block:: python # mcommands/something-useless.py from mcadmin.command import ManagementCommandAdmin from mcadmin.registry import registry from forms import SomethingUselessManagementCommandAdminForm class SomethingUselessManagementCommandAdmin(ManagementCommandAdmin): command: str = "something-useless" name: str = "Useless management command" form: Type[Form] = SomethingUselessManagementCommandAdminForm # registering management command admin custom classes registry.register(command=SomethingUselessManagementCommandAdmin) Also, there are some helpers for building more complex flows, like management commands that can be executed directly or as a background task or management commands that handle uploaded files. For example: Management command: .. code-block:: python # management/commands/distributed-something-useless-with-file.py from mcadmin.management.commands import TaskCommand class Command(TaskCommand): help: str = "Useless management command which process file uploaded from a command from and can be executed directly or as background task" def add_arguments(self, parser): parser.add_argument( "--task", "-T", dest="as_task", help="Run command as background task", default=False, action="store", metavar="TASK", type=bool, ) parser.add_argument( "--object-id", "-o", dest="object_id", help="Object ID", action="store", required=True, metavar="OBJECT_ID", type=int, ) parser.add_argument( "--data", "-D", dest="data", help="Path to file with data", action="store", metavar="DATA", type=str, ) def _local(self, *args, **kwargs): self.stdout.write(kwargs.get("object_id")) self.stdout.write(kwargs.get("data")) def _as_task(self, *args, **kwargs): # There must be code which executed in threads or call celery task or something else asynchronous. self.stdout.write(kwargs.get("object_id")) self.stdout.write(kwargs.get("data")) Management command admin form: .. code-block:: python # forms.py from django import forms from mcadmin.forms.helpers import ( ManagementCommandAdminTaskForm, ManagementCommandAdminFilesForm ) class DistributedSomethingUselessWithFileManagementCommandAdminForm( ManagementCommandAdminTaskForm, ManagementCommandAdminFilesForm ): data = forms.FileField(label="data, required=True) object_id = forms.IntegerField(label="Object ID", required=True) Management command admin example file: .. code-block:: python # mcommands/examples.py from mcadmin.example import ManagementCommandAdminExampleFile class DistributedSomethingUselessWithFileManagementCommandAdminExampleFile( ManagementCommandAdminExampleFile ): description: str = "Management command with files example file" path: str = "distributed-something-useless-with-file-example.csv" Or for the file which not served using Django but directly available for download via HTTP: .. code-block:: python # mcommands/examples.py from mcadmin.example import ManagementCommandAdminExampleFile class DistributedSomethingUselessWithFileManagementCommandAdminExampleFile( ManagementCommandAdminExampleFile ): description: str = "Management command with files example file" path: str = "https://www.example.com/distributed-something-useless-with-file-example.csv" raw: bool = True Management command admin: .. code-block:: python # mcommands/something-useless.py from mcadmin.command import ManagementCommandAdmin from mcadmin.registry import registry from forms import DistributedSomethingUselessWithFileManagementCommandAdminForm class DistributedSomethingUselessWithFileManagementCommandAdmin(ManagementCommandAdmin): command: str = "distributed-something-useless-with-file" name: str = "Distributed useless management command with file" form: Type[Form] = DistributedSomethingUselessWithFileManagementCommandAdminForm examples: Type[ManagementCommandAdminExampleFile] = [DistributedSomethingUselessWithFileManagementCommandAdminExampleFile] # registering management command admin custom classes registry.register(command=DistributedSomethingUselessWithFileManagementCommandAdmin) Contributing ------------ 1. `Fork it <https://github.com/vint21h/django-mcadmin/>`_ 2. Install `GNU Make <https://www.gnu.org/software/make/>`_ 3. Install and configure `pyenv <https://github.com/pyenv/pyenv/>`_ and `pyenv-virtualenv plugin <https://github.com/pyenv/pyenv-virtualenv/>`_ 4. Install and configure `direnv <https://github.com/direnv/direnv/>`_ 5. Create environment config from example .. code-block:: bash cp .env.example .env 6. Install development dependencies: .. code-block:: bash make install 7. Create your fix/feature branch: .. code-block:: bash git checkout -b my-new-fix-or-feature 8. Check code style and moreover: .. code-block:: bash make check 9. Run tests: .. code-block:: bash make test 10. Push to the branch: .. code-block:: bash git push origin my-new-fix-or-feature 11. `Create a new Pull Request <https://github.com/vint21h/django-mcadmin/compare/>`_ Licensing --------- django-mcadmin is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. For complete license text see COPYING file. Contacts -------- **Project Website**: https://github.com/vint21h/django-mcadmin/ **Author**: Alexei Andrushievich <vint21h@vint21h.pp.ua> For other authors list see AUTHORS file. .. |GitHub| image:: https://github.com/vint21h/django-mcadmin/workflows/build/badge.svg :alt: GitHub .. |Coveralls| image:: https://coveralls.io/repos/github/vint21h/django-mcadmin/badge.svg?branch=master :alt: Coveralls .. |pypi-license| image:: https://img.shields.io/pypi/l/django-mcadmin :alt: License .. |pypi-version| image:: https://img.shields.io/pypi/v/django-mcadmin :alt: Version .. |pypi-django-version| image:: https://img.shields.io/pypi/djversions/django-mcadmin :alt: Supported Django version .. |pypi-python-version| image:: https://img.shields.io/pypi/pyversions/django-mcadmin :alt: Supported Python version .. |pypi-format| image:: https://img.shields.io/pypi/format/django-mcadmin :alt: Package format .. |pypi-wheel| image:: https://img.shields.io/pypi/wheel/django-mcadmin :alt: Python wheel support .. |pypi-status| image:: https://img.shields.io/pypi/status/django-mcadmin :alt: Package status .. _GitHub: https://github.com/vint21h/django-mcadmin/actions/ .. _Coveralls: https://coveralls.io/github/vint21h/django-mcadmin?branch=master .. _pypi-license: https://pypi.org/project/django-mcadmin/ .. _pypi-version: https://pypi.org/project/django-mcadmin/ .. _pypi-django-version: https://pypi.org/project/django-mcadmin/ .. _pypi-python-version: https://pypi.org/project/django-mcadmin/ .. _pypi-format: https://pypi.org/project/django-mcadmin/ .. _pypi-wheel: https://pypi.org/project/django-mcadmin/ .. _pypi-status: https://pypi.org/project/django-mcadmin/


نیازمندی

مقدار نام
<4.1,>=2.2 django
>=1.0.3 django-appconf
==21.4.0 attrs
==1.7.2 bandit
==22.1.0 black
==0.22.1 bpython
==0.47 check-manifest
==0.3.4 check-wheel-contents
==6.3.1 coverage
==3.3.1 coveralls
==0.13.0 curlylint
==1.8.1 darglint
==0.9 dennis
==1.9.0 django-stubs
==0.12.0 dlint
==0.2.1 dodgy
==0.3.0 dotenv-linter
==0.0.6 flake8-annotations-complexity
==0.0.5 flake8-annotations-coverage
==0.4.0 flake8-broken-line
==22.1.11 flake8-bugbear
==1.5.3 flake8-builtins
==1.3.2 flake8-coding
==0.1.0 flake8-cognitive-complexity
==3.8.0 flake8-comprehensions
==4.0.0 flake8-debugger
==1.1.2 flake8-django
==1.6.0 flake8-docstrings
==1.2.0 flake8-eradicate
==2.1.1 flake8-executable
==0.0.9 flake8-expression-complexity
==1.1.1 flake8-fixme
==0.0.6 flake8-functions
==1.2.0 flake8-mutable
==0.3.3 flake8-no-implicit-concat
==4.0.0 flake8-print
==1.1.3 flake8-return
==0.17.1 flake8-simplify
==1.12.0 flake8-typing-imports
==1.3 flake8-use-fstring
==0.0.4 flake8-variables-names
==3.9.2 flake8
==1.1.0 freezegun
==4.11.1 importlib-metadata
==1.5.0 interrogate
==5.10.1 isort
==0.931 mypy
==0.12.1 pep8-naming
==0.5.0 pip-outdated
==0.4 polint
==4.1.0 pre-commit-hooks
==2.17.0 pre-commit
==2.11.2 pygments
==2.5.2 pylint-django
==2.12.2 pylint
==3.2 pyroma
==3.0.0 pytest-cov
==4.5.2 pytest-django
==0.1.3 pytest-extra-durations
==0.4.2 pytest-instafail
==0.9.4 pytest-sugar
==0.0.11 pytest-timer[termcolor]
==7.0.1 pytest
==32.0 readme-renderer
==1.3.1 removestar
==2.2.0 seed-isort-config
==0.8.9 tabulate
==2.9.1 tox-gh-actions
==1.1.0 tox-pyenv
==3.24.5 tox
==3.8.0 twine
==1.1.6 types-freezegun
==0.37.1 wheel
==1.3.0 yesqa


نحوه نصب


نصب پکیج whl django-mcadmin-0.9.9:

    pip install django-mcadmin-0.9.9.whl


نصب پکیج tar.gz django-mcadmin-0.9.9:

    pip install django-mcadmin-0.9.9.tar.gz