在管理中公开Django管理命令
项目描述
django-managerie
:lightbulb: 在管理中将Django管理命令作为表单公开
需求
- Django 3.2+ (该项目跟踪Django的生命周期策略)
- Python 3.7+
安装
像安装任何Python包一样安装该包,然后将 django_managerie
添加到您的 INSTALLED_APPS
中。
自动修补
这是启动的最简单方法。您可以要求Managerie修补管理站点仪表板视图,包括具有“命令”名称的伪模型,这些模型在所有提供管理命令的应用程序中可用,同时它还会包含它自己的URL。
将Managerie连接到您的管理站点(例如,在 urls.py
中,您有 admin.autodiscover()
),如下所示
from django.contrib import admin
from django_managerie import Managerie
# ...
managerie = Managerie(admin_site=admin.site)
managerie.patch()
不修补
这可能是更安全的(在存在稍微不太宽容的第三方应用程序(例如,篡改管理)的情况下),但您无法享受管理仪表板中命令按钮的便利。
from django.contrib import admin
from django.conf.urls import include, url
from django_managerie import Managerie
# ...
managerie = Managerie(admin_site=admin.site)
# ...
urlpatterns = [
# ...
# ... url(r'^admin/', include(admin.site.urls)), ...
url(r'^admin/', include(managerie.urls)), # Add this!
]
用法
如果您允许Managerie修补您的管理,则超级用户现在可以在管理仪表板中看到“命令”对象。如果您没有修补管理,您可以通过 /admin/managerie/
(或您的管理位置)访问所有命令的列表。
如果您点击到命令,您将看到命令的参数以表单的形式展开。填写表单,然后点击“执行命令”,您就完成了!:sparkles
从managerie'd命令访问Django请求
Managerie将 _managerie_request
设置在命令实例上为当前Django请求。您可以使用它来访问请求,例如,获取当前用户。
TODO
- 更多
argparse
操作支持 - 多参数支持(
nargs
)
项目详情
下载文件
下载适用于您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。
源代码分发
django_managerie-0.5.1.tar.gz (7.3 kB 查看哈希值)
构建分发
django_managerie-0.5.1-py3-none-any.whl (10.3 kB 查看哈希值)
关闭
django_managerie-0.5.1.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | a68bca3eb87089ec3d42684b80250585f86ee0eaa9368105f0c0ba0b2ea9ed3d |
|
MD5 | a981d5e9a5776a212ee033d7a5c62974 |
|
BLAKE2b-256 | b0d19dca6a07a72221ceac0bf75ea26611692b38cacccf853827a27923261194 |
关闭
django_managerie-0.5.1-py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 64ebbf9312f8a8af20eab1ce148cae3f8f9e626b60de8a43b7ed4a64a242e2b9 |
|
MD5 | 557020cb8d776f4e6fbd157c8736e109 |
|
BLAKE2b-256 | 05877fd2efc9ad3bd8ea7c3aae6a30f54edf73880e5f38cc15597ab1a73d8520 |