我在同一个应用程序中有两个视图文件(让它们成为view1和view2)。 view1中有函数 appcard,我试图在view2中进行攻击,
from app.view1 import appcard
但收到错误
cannot import name appcard
有没有办法解决这个问题?已经尝试导入整个viev文件,但又出现了另一个错误,例如" appcard未定义"。
view1.py
...
def appcard(request,exte):
"""some code"""
return render(request,
'app/applicantcard.html',
)
view2.py
from app.view1 import appcard
def applicant_home(request):
exte='applicant/applicant_layout.html'
return appcard(request, exte)
如果
from .view1 import appcard
有错误:
ImportError at /
cannot import name appcard
答案 0 :(得分:1)
要从同一包(文件夹)中的模块(文件)导入某些内容,您应该使用相对导入符号 - 使用点。在您的情况下使用:
from .view1 import appcard
您的代码中似乎也有拼写错误:首先,您说您在view1
文件中有appcatd
函数,并且您尝试导入appcard
。所以你应该导入函数的确切名称。
答案 1 :(得分:0)
哦,它实际上是乱糟糟的:我从view2导入了一些函数到view1,它使用的函数使用从view1函数导入的一些函数。对不起,重新安排了功能,现在工作正常。