[英]Using other file names than models.py for Django models?
創建可重用應用程序時,我應該將定義的所有模型放入單個文件models.py
還是可以將模型分組到多個文件中,例如topic1.py
、 topic2.py
?
請描述贊成和反對的所有原因。
models
子模塊的特殊之處在於它在初始化過程中的特定時間自動導入。 此時也應導入所有模型。 您不能在此之前導入它們,稍后導入它們可能會導致錯誤。
您可以在不同的模塊中定義您的模型,但您應該始終將所有模型導入到models.py
或models/__init__.py
。 例如:
# models/topic1.py
class Topic1(models.Model):
...
# models/__init__.py
from .topic1 import Topic1
如果您將每個模型導入到models.py
或models/__init__.py
,這也允許您直接從該文件導入所有模型。 在示例中,這意味着您可以從myapp.models
導入Topic1
,而不僅僅是從myapp.models.topic1
。 通過這種方式,您可以在多個文件中組織模型,而無需在需要導入模型時記住每個模型的精確位置。
這取決於你定義了多少模型,如果你只有1到5個類模型,就把它放在一個文件中,但如果你有5個以上的類模型,我建議把它放在幾個文件中,
但根據我的經驗,如果模型放入多個文件,導入東西時會變得不那么麻煩,
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.