用于记录管理命令的django应用程序
django-commandlog的Python项目详细描述
django commandlog添加了将django管理命令记录到数据库中的功能,因此可以在管理界面中使用它。
我们一直在使用这个直接通过管理界面检查计划管理命令的结果。它通过复制stdout和stderr的流来工作。
decorator还添加了一些helper方法,如下所示。
快速启动
- 将“django_commandlog”添加到INSTALLED_APPS设置中,如下所示:
INSTALLED_APPS=[...'django_commandlog',]
- 运行
python manage.py migrate
将django_commandlog
的表添加到数据库中。
三。若要记录管理命令,请在类上方添加@command_log
装饰符
(见下面的示例)。因此,它目前只支持自定义管理
命令。如果您希望将此添加到默认的django manage命令中,您将
必须用decorator创建一个子类。拉取/合并请求
我们欢迎你来解决这个问题。
@command_logclassSampleCommand(BaseCommand):defhandle(self,*args,**options):...
配置
当前没有配置值。
助手方法
当您的类用@command_log修饰时,您可以访问其他方法。
CommandLog包含可用于基本CRUD操作(创建、读取、更新、删除)的计数器 通过提供的助手方法:
add_log_created(10)add_log_read(30)add_log_updated(20)add_log_deleted(30)add_log_errors(14)
有两个字段用于跟踪命令或运行:reference和user。 引用是要在管理命令中跟踪的任何数字。
您还可以使用add_log_user(user)
方法将用户添加到跟踪中。user
可以是将保持原样的字符串,也可以使用settings.AUTH_USER_MODEL
对象。
add_log_reference("C1235342321")add_log_user("user:ldap:username")# oradd_log_user(user_instance)