我的views.py体积太大了,很难找到正确的视图。
views.py
如何将其拆分为多个文件,然后导入?是否涉及速度损失?
我可以这样models.py吗?
models.py
在Django中,所有内容都是Python模块(* .py)。你可以创建一个具有__init__.py内部视图的文件夹,并且仍然可以导入视图,因为这也实现了Python模块。但是一个例子会更好。
__init__.py
你的原始图片views.py可能如下所示:
def view1(arg): pass def view2(arg): pass
使用以下文件夹/文件结构,它将起到相同的作用:
views/ __init__.py viewsa.py viewsb.py
viewsa.py :
def view1(arg): pass
viewsb.py :
def view2(arg): pass
init.py :
from viewsa import view1 from viewsb import view2
在快速的解释是:当你写from views import view1的Python会寻找在厂景
from views import view1
views.py,这是第一个(原始)情况下发生的情况
views/__init__.py,这是第二种情况。在这里,__init__.py能够提供view1方法,因为它可以导入它。
views/__init__.py
使用这种解决方案,你可能无需更改import或更改urlpattern参数urls.py
urls.py
如果每个新视图文件中都有许多方法,那么views/__init__.py使用导入可能会很有用*,如下所示:
from viewsa import * from viewsb import *
我实际上不了解速度问题(但我怀疑是否有任何问题)。
对于模型,可能会有些困难。