Prettier Task admin
This commit is contained in:
parent
f149b19606
commit
21dc3f034e
|
|
@ -39,7 +39,7 @@ class WorkerAdmin( BaseModelAdmin ):
|
||||||
@admin.register( Task )
|
@admin.register( Task )
|
||||||
class TaskAdmin( BaseModelAdmin ):
|
class TaskAdmin( BaseModelAdmin ):
|
||||||
order = 1
|
order = 1
|
||||||
list_display = 'name', 'timeout', 'gracetime', 'jitter', 'type', 'worker_type', 'logged_executions', 'last_execution', 'scheduled'
|
list_display = 'name', 'timeout', 'gracetime', 'jitter', 'type', 'worker_type', 'logged', 'last_execution', 'scheduled'
|
||||||
fields = ["name", "description", "type", "on_model_change", "jitter", "self_aware"]
|
fields = ["name", "description", "type", "on_model_change", "jitter", "self_aware"]
|
||||||
|
|
||||||
actions = 'schedule_execution', 'execution_now', 'delete_script_missing'
|
actions = 'schedule_execution', 'execution_now', 'delete_script_missing'
|
||||||
|
|
@ -80,12 +80,16 @@ class TaskAdmin( BaseModelAdmin ):
|
||||||
try: return ", ".join( f"{m.__module__}.{m.__name__}" for m in obj.registered_tasks[obj.name].watching_models )
|
try: return ", ".join( f"{m.__module__}.{m.__name__}" for m in obj.registered_tasks[obj.name].watching_models )
|
||||||
except: return "N/A"
|
except: return "N/A"
|
||||||
|
|
||||||
def logged_executions( self, obj ):
|
def logged( self, obj ):
|
||||||
return obj.trace_set.exclude( status = "S" ).count()
|
count = obj.trace_set.exclude( status = "S" ).count()
|
||||||
|
if count == 1: return "1 trace"
|
||||||
|
return f"{count} traces"
|
||||||
|
|
||||||
def last_execution( self, obj ):
|
def last_execution( self, obj ):
|
||||||
last_trace = obj.trace_set.exclude( status = "S" ).exclude( last_run_datetime = None ).order_by('last_run_datetime').last()
|
last_trace = obj.trace_set.exclude( status = "S" ).exclude( last_run_datetime = None ).order_by('last_run_datetime').last()
|
||||||
return humanize.naturaltime( last_trace.last_run_datetime ) if last_trace else "Never"
|
if not last_trace: return "Never"
|
||||||
|
|
||||||
|
return "Ongoing..." if last_trace.status == "R" else humanize.naturaltime( last_trace.last_run_datetime )
|
||||||
|
|
||||||
def scheduled( self, obj ):
|
def scheduled( self, obj ):
|
||||||
return obj.trace_set.filter( status = "S" ).exists()
|
return obj.trace_set.filter( status = "S" ).exists()
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user