我現在開始編寫我的第一個Django項目,我需要爲我的應用程序製作forms.py
文件。我見過一些教程將文件存儲在項目的主文件夾下,另一些存放在應用程序目錄中。forms.py文件應該放在哪裏?
哪些佈局是最適合我,如果我想打只適用於一個應用形式?
是否適合使多個文件保留我的表單代碼?
謝謝!
我現在開始編寫我的第一個Django項目,我需要爲我的應用程序製作forms.py
文件。我見過一些教程將文件存儲在項目的主文件夾下,另一些存放在應用程序目錄中。forms.py文件應該放在哪裏?
哪些佈局是最適合我,如果我想打只適用於一個應用形式?
是否適合使多個文件保留我的表單代碼?
謝謝!
下面是標準配置:
├── apps/
| ├── [app]/
| | ├── __init__.py
| | ├── urls.py
| | ├── models.py
| | ├── forms.py # Forms
| | ├── admin.py
| | ├── views.py
| | ├── migrations/
| | ├── management/
| | ├── templates/ # Here or in the project root
| | └── (other)
| |
| └── __init__.py
|
...
簡而言之:守在應用相關的應用各種形式。它在概念上一致,直觀,使代碼更易於維護(通過分離)。
多應用程序表單/組件很少見。您可以將它們保存在名爲「common」的應用中。這是一個非常流行的慣例。
這樣,您就可以導入forms
爲views
沒有麻煩:
from .forms import FormA, FormB
# or
from . import forms
# or
from .forms import *
# and from common:
from ..common import forms as common_forms
關於你提到的第二個問題:絕對 - 如果分離(例如干淨的項目佈局,可維護性,更詳細的文件名)的好處是值得的麻煩(例如導入多個文件而不是一個文件)。沒有硬性的規則,所以你必須計算折衷和決定。
感謝所有這些! – Mathyou
我會把它放在與應用程序本身相同的文件夾中。如果您有多個應用程序使用不同的表單文件,我只會將它們保存在各自的應用程序文件夾中。 – GreenSaber
好的,謝謝。所以我把它放在哪裏並不重要? – Mathyou
我會將每個應用程序的表單文件保存在該應用程序的相同文件夾中。所以'app_a'的表單文件將位於'app_a'目錄中。 – GreenSaber