我知道这是一个奇怪的问题,但我不知道该怎么做。我克隆了......它正在起作用。我想找到django.views.generic。我在文本编辑器中搜索了目录,我查看了django.views。但我看不到通用(只有一个名为&#34的文件夹;通用")。我无法理解通用文件的位置。它用于许多导入和扩展类,但我找不到该文件来查看导入函数。我对文件和导入有很好的理解,我会说在这个阶段我只是在noob级别之上。所以我在这里缺少一些东西。为什么我找不到这个文件?如果我从django.core.urlresolvers导入反向,我可以很容易地找到这个但不是 例如:来自django.views.generic import CreateView
哪里通用?
答案 0 :(得分:3)
尝试从Python解释器运行它:
>>> import django.views.generic
>>> django.views.generic.__file__
这将显示gerneric
作为字符串路径的位置。在我的例子中输出是:
'/.../python3.5/site-packages/django/views/generic/__init__.py'
如果查看此__init__.py
,您将看不到任何通用*View
类的代码。但是,仍然可以从路径django.views.generic
导入这些类(如果我没有记错,这是因为*View
类是django/views/generic/__init__.py
中__all__
列表的一部分。对于CreateView
,它实际上位于django/views/generic/edit.py
,但可以从django.views.generic
导入,因为__init__.py
的设置方式。
当您想要找到.py
文件的路径时,这种技术通常很有用。同样有用:如果您在脚本(print(__file__)
)中单独使用它,它将为您提供脚本本身的路径。