2009-12-16 69 views

回答

50

我通常把這種應用特異性輔助功能的文件utils.py和使用成才這樣

from myapp.utils import my_cool_func 

def view_coolness(request): 
    data = my_cool_func(request) 
    return render_to_response("xxx.html") 

但它取決於你幫手什麼呢,可能是他們修改請求,可能是中間件的一部分,所以你需要知道這些幫助函數的作用

+11

在代碼中提到應用通常是一個糟糕的主意。只需從''utils import my_cool_func''執行''''''''''''''''''''''''''''''''''''但應該不需要重新聲明你已經在的應用程序的名稱。 – 2009-12-18 11:32:51

+3

@Peter Bengtsson,可能是,但是如何在程序包中的模塊中導入utils。我有幾個視圖模塊的意見文件夾,然後中間件文件夾等 – 2009-12-18 12:17:40

+0

@PeterBengtsson,爲什麼是一個壞主意?編輯:哎呀,這是2009年(我仍然好奇) – 2014-08-31 07:48:54

7

如果它們與特定的應用程序相關,我通常只是將它們放在相關的應用程序文件夾中,並命名文件'functions.py'。

如果它們不是特定於某個應用程序,那麼可以創建一個「功能」應用程序文件夾並將它們放在那裏。

6

創建一個可重用的應用程序,其中包含您的通用函數,以便您可以在項目之間共享。

使用例如git倉庫來存儲這個程序和管理部署和演進(子模塊)

使用一個公共的git回購所以你可以我使用新的Python文件與社區:)

1

分享應用程序文件夾中的service.py。該文件主要包含針對特定應用程序的幫助器查詢。此外,我還在Django應用程序中創建了一個包含全局幫助函數和常量的文件夾。