我爲我的項目使用Django 1.10。以下是項目結構。從Django中的另一個應用程序導入類
project
|-accounts
| |-forms
| | |-__init__.py
| | |-user_forms.py
|-otherapp
| |-views.py
我在user_forms.py
文件中定義UserForm
類和__init__.py
文件I進口user_forms
爲from .user_forms import *
我想在otherapp
使用UserForm
。
我只是好奇,爲什麼
from accounts.form import UserForm
form = UserForm(request.POST)
的作品,但
import accounts.forms.UserForm
form = UserForm(request.POST)
或
form = accounts.form.UserForm(request.POST)
不起作用?爲什麼?
不是第三種方法比前兩種更好,因爲它遵循python Explicit is better than implicit
的禪宗。
將類從一個應用程序導入其他應用程序的最佳方式是什麼?
星進口像'從accounts.forms導入*'都望而卻步 - 這使得它很難看到進口來自。 – Alasdair