Django - Heroku 推送成功但出现 AttributeError(模块没有属性)
Django - Heroku push succeeds but getting AttributeError (module has no attribute)
我将我的 Web 应用程序推送到 Heroku 并且它构建/部署良好,但是当我访问它时出现此错误:
AttributeError at /
module 'wakemeup.models' has no attribute 'environment'
Exception Location: /app/lib/UsefulFunctions/googleUtils.py in <module>, line 16
Python Executable: /app/.heroku/python/bin/python
Python Version: 3.6.10
Python Path:
['/app/.heroku/python/bin',
'/app',
'/app/.heroku/python/lib/python36.zip',
'/app/.heroku/python/lib/python3.6',
'/app/.heroku/python/lib/python3.6/lib-dynload',
'/app/.heroku/python/lib/python3.6/site-packages']
在本地运行良好,所以我第一个想到的是PYTHONPATH
,但在本地似乎类似:
Python Path:
['C:\Users\ravioli\projects\dcp',
'C:\Program Files (x86)\Python38-32\python38.zip',
'C:\Program Files (x86)\Python38-32\DLLs',
'C:\Program Files (x86)\Python38-32\lib',
'C:\Program Files (x86)\Python38-32',
'C:\Program Files (x86)\Python38-32\lib\site-packages']
目录结构(简化)
googleUtils.py(简体)
import os
import sys
import io
import copy
from urllib.error import HTTPError
# Import - Google
from google.oauth2 import service_account
...
# Import - Application
from lib.UsefulFunctions.dataUtils import get_setting
import wakemeup.models.environment as env
class GoogleDriveManager():
...
我最初将 import wakemeup.models.environment as env
行作为 from ... import
但这给了我一个循环依赖错误,所以我改变了它并且它在本地工作正常。不确定是否与此有关。
我该如何解决这个问题才能在 Heroku 上运行?
我更改了导入语句,现在可以使用了:
from wakemeup import models
# import wakemeup.models.environment as env # original
也许 Heroku 使用了另一个名为 environment
的模块,不确定。
我将我的 Web 应用程序推送到 Heroku 并且它构建/部署良好,但是当我访问它时出现此错误:
AttributeError at /
module 'wakemeup.models' has no attribute 'environment'
Exception Location: /app/lib/UsefulFunctions/googleUtils.py in <module>, line 16
Python Executable: /app/.heroku/python/bin/python
Python Version: 3.6.10
Python Path:
['/app/.heroku/python/bin',
'/app',
'/app/.heroku/python/lib/python36.zip',
'/app/.heroku/python/lib/python3.6',
'/app/.heroku/python/lib/python3.6/lib-dynload',
'/app/.heroku/python/lib/python3.6/site-packages']
在本地运行良好,所以我第一个想到的是PYTHONPATH
,但在本地似乎类似:
Python Path:
['C:\Users\ravioli\projects\dcp',
'C:\Program Files (x86)\Python38-32\python38.zip',
'C:\Program Files (x86)\Python38-32\DLLs',
'C:\Program Files (x86)\Python38-32\lib',
'C:\Program Files (x86)\Python38-32',
'C:\Program Files (x86)\Python38-32\lib\site-packages']
目录结构(简化)
googleUtils.py(简体)
import os
import sys
import io
import copy
from urllib.error import HTTPError
# Import - Google
from google.oauth2 import service_account
...
# Import - Application
from lib.UsefulFunctions.dataUtils import get_setting
import wakemeup.models.environment as env
class GoogleDriveManager():
...
我最初将 import wakemeup.models.environment as env
行作为 from ... import
但这给了我一个循环依赖错误,所以我改变了它并且它在本地工作正常。不确定是否与此有关。
我该如何解决这个问题才能在 Heroku 上运行?
我更改了导入语句,现在可以使用了:
from wakemeup import models
# import wakemeup.models.environment as env # original
也许 Heroku 使用了另一个名为 environment
的模块,不确定。