在另一个应用视图中导入 django 应用视图
Posted
技术标签:
【中文标题】在另一个应用视图中导入 django 应用视图【英文标题】:Import a django app view in another app view 【发布时间】:2015-04-01 15:17:23 【问题描述】:我有两个 django 应用程序,我在 app2 中调用了 app1 的视图,如下所示:
#app: app1
#someview.py
def a_view(request, someparam):
#some code here
#app: app2
#otherview.py
from app1.someview import a_view
def another_view(request):
param = 1
a_view(request, param)
def view2(request):
#some code
它工作正常。我的问题是现在我想从 app1 中的 app2 调用一个视图。所以我在 someview.py 中添加了 import 语句,如下所示:
#app: app1
#someview.py
from app2.otherview import view2
def a_view(request, someparam):
#some code here
结果是 ImportError“无法导入名称 view2”。 谁能告诉我为什么会这样?
【问题讨论】:
是的。我在两个应用程序中都有它。 这是一个导入循环,用于代码重构 嗯...对不起,我不明白。你什么意思?如何解决这个问题? 【参考方案1】:第二个导入遮蔽了第一个...尝试像
import app2.otherview
或
from app2.views as app2_views
【讨论】:
如果我在 app2 中有一个视图(生成 app2 模板),我正在将其导入到 app1 的视图中,那么我将如何调用该 app2 视图以便将其加载到 @987654323 @ 的 app1 模板?我可能会感到困惑;)以上是关于在另一个应用视图中导入 django 应用视图的主要内容,如果未能解决你的问题,请参考以下文章
在 Python 中使用 Django - 尝试导入时未定义视图
如果 django 视图在另一个用户登录时对用户名执行 User.get,用户上下文是不是丢失?