如何在 Django 啟動時只執行一次程式碼?

Linda Hamilton
發布: 2024-11-03 03:29:30
原創
807 人瀏覽過

How to Execute Code Only Once on Django Startup?

Django 啟動時執行一次程式碼

建立自訂 Django 中間件類別時,通常只需要在啟動時執行一次程式碼。但是,使用 sdolan 概述的標準方法可能會導致所需的程式碼執行兩次。

解決方案

對於 Django 版本 1.7,確保程式碼只執行一次及以上,利用 Django 提供的新鉤子。在應用程式的apps.py 檔案中:

<code class="python">from django.apps import AppConfig
class MyAppConfig(AppConfig):
    name = 'myapp'
    verbose_name = "My Application"
    def ready(self):
        pass # Your startup code here</code>
登入後複製

對於1.7 之前的Django 版本,將啟動程式碼放在INSTALLED_APPS 的任一__init__.py 檔案中:

<code class="python">def startup():
    pass # Load a big thing

startup()</code>
登入後複製

當使用./manage.py runserver,由於伺服器驗證,此程式碼將執行兩次。但是,在生產部署或自動伺服器重新載入期間,程式碼只會執行一次。

以上是如何在 Django 啟動時只執行一次程式碼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板