我正在尝试检索在 rq 调度程序中传递给我的作业的参数,同时调度如下: 传递的参数、函数名称和其他内容
list_of_jobs=scheduler.get_jobs()
# print("jobs lsit",list_of_jobs)
for job in list_of_jobs:
print(job.args)
Traceback (most recent call last):
raise AppRegistryNotReady("Models aren't loaded yet.")
django.core.exceptions.AppRegistryNotReady: Models aren't loaded yet.
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
ile "/home/munz/.local/lib/python3.7/site-packages/rq/job.py", line 266, in _deserialize_data
raise DeserializationError() from e
rq.exceptions.DeserializationError
我不确定接受的答案是否正确。您可以重新对作业进行排队,这样参数就必须以某种方式保留在某个地方。
我抓住了一个 Job 对象,并注意到它有一个名为
data
的属性。这是一个腌制的字节数组,所以 pickle.loads(job.data)
给了我一本像这样的字典:
('ph.mod.tasks.foo', None, (), {})