Django Background Tasks Installation & Migration
* 注意以下是使用延續開發的 Django-Background-Tasks 而不是舊版的 Django-Background-Task
Installation 按照 Django-Background-Tasks GitHub 上的說明就沒問題, 但是要注意的是說明中沒有提到 DB Migration 的步驟, 可能這是常識了 ?
如果沒做 DB Migration 的話, 直接嘗試寫 example code 執行會出現類似以下的錯誤訊息:
"django.db.utils.OperationalError: no such table: background_task"
也就是 DB 中找不到 background_task table
這時候回頭去做 makemigrations 會發現...
還是出現了 "django.db.utils.OperationalError: no such table: background_task" !!!
這個原因與 stackoverflow 上可以查到的 不相同, 該例子是使用 makemigrations background_task 指定要變動的 package 就可以解決.
真正的原因出在 example code 撰寫中可能牽涉到的調用 background_task table 的部分. 在我的例子中, 是 example code 在 views.py 中加入了 import MyApp.routine_tasks ( routine_tasks.py 是我用來放預計要背景執行的工作 ), 而 routine_tasks.py 中又有 from background_task import background , 所以就出現問題了~
結論: 進行 makemigration 要在加入了相關 code 之前進行
1. Install & set settings.py
2. do makemigrations & migrate before add any example code
3. add example code
0 意見:
張貼留言