我正在嘗試為 django 創建一個可以運行的自定義命令python manage.py cert_transparency,我已經快完成了,但遇到了一些麻煩。這個的目的是在后臺創建一個 24/7 運行的命令,我只是在 docker 容器中運行它。我收到此錯誤消息certificate_update: 0cert [00:00, ?cert/s]Traceback (most recent call last): File "manage.py", line 15, in <module> execute_from_command_line(sys.argv) File "/usr/local/lib/python3.7/site-packages/django/core/management/__init__.py", line 401, in execute_from_command_line utility.execute() File "/usr/local/lib/python3.7/site-packages/django/core/management/__init__.py", line 395, in execute self.fetch_command(subcommand).run_from_argv(self.argv) File "/usr/local/lib/python3.7/site-packages/django/core/management/base.py", line 330, in run_from_argv self.execute(*args, **cmd_options) File "/usr/local/lib/python3.7/site-packages/django/core/management/base.py", line 371, in execute output = self.handle(*args, **options) File "/src/scraper/management/commands/cert_transparency.py", line 184, in handle certstream.listen_for_events(callback, url=certstream_url)NameError: name 'callback' is not defined基本上我想做的只是將此腳本作為 django 中的自定義管理命令導入。
1 回答

哆啦的時光機
TA貢獻1779條經驗 獲得超6個贊
您定義了該.callback(…)
方法兩次,所以我認為您應該刪除其中之一。.callback(…)
您可以使用以下方法傳遞對該方法的引用self.callback
:
def handle(self, *args, **options): # … certstream.listen_for_events(self.callback, url=certstream_url)
添加回答
舉報
0/150
提交
取消