Python 这两种通用视图之间的差异 从django.views.generic导入CreateView

Python 这两种通用视图之间的差异 从django.views.generic导入CreateView,python,django,Python,Django,2.从django.views.generic.edit导入CreateView 它们之间有什么区别?您可以使用模块从导入模块的位置获取文件 >>> import inspect >>> inspect.getfile(django.views.generic.edit.CreateView) '/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/djang

2.从django.views.generic.edit导入CreateView

它们之间有什么区别?

您可以使用模块从导入模块的位置获取文件

>>> 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'

实际上,它们是一样的。第二次导入将从
导入类,然后从
编辑.py
继续导入
CreateView

如果查看
\uuuu init\uuuu.py
的内容,它将在其中指定导入语句:

from django.views.generic.edit import (
    CreateView, DeleteView, FormView, UpdateView,
)

您可以看到,通过
\uuuu init\uuuu
导入模块将导入
CreateView

没有区别
from django.views.generic import CreateView
\uuuu init\uuuu
文件导入类,该文件从
edit.py导入
CreateView
from django.views.generic.edit import (
    CreateView, DeleteView, FormView, UpdateView,
)