2.from django.views.generic.edit import CreateView
他们之间的区别是什么?
答案 0 :(得分:1)
您可以使用inspect
模块从导入模块的位置获取文件。
>>> import inspect
>>> inspect.getfile(django.views.generic.edit.CreateView)
'/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/django/views/generic/edit.py'
和
>>> inspect.getfile(django.views.generic.CreateView)
'/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/django/views/generic/edit.py'
实际上,它们是一样的。第二次导入将从__init__.py
导入该类,然后从CreateView
继续导入edit.py
。
如果你查看__init__.py
的内容,它会在那里指定一个import语句:
from django.views.generic.edit import (
CreateView, DeleteView, FormView, UpdateView,
)
您可以看到通过__init__
导入模块将导入CreateView
。