这是我的Django app文件夹结构
|-----tt
| |--settings.py
|
|-----warehouse
| |--models.py
| |--__init__.py
|
|-----dashboard
| |--email_excel_reports.py
|
在email_excel_reports.py
# for ORM query
from warehouse.models import EntryFormLineItem
from django.db.models import Sum
from django.db.models.functions import Coalesce
from django.utils import timezone
line_items = EntryFormLineItem.objects.filter(approved_by__isnull=False, ...
我在python email_excel_reports.py
dashboard
时出现此错误
Traceback (most recent call last):
File "/vagrant/dashboard/email_excel_reports.py", line 11, in <module>
from warehouse.models import EntryFormLineItem
ImportError: No module named 'warehouse'
请记住,当我运行python email_excel_reports.py
时,我正在使用nginx运行gunicorn,因此django
应用已成功运行。
__init__.py
内的warehouse
default_app_config = 'warehouse.apps.WarehouseConfig'
当我运行python manage.py shell
然后输入相同的代码行时,运行代码没有问题。
如何克服错误?
重新开放 - 为什么?
仅仅因为解决方法是将python manage.py shell <
放在python脚本文件的前面,并且这个修复程序在所谓的重复问题的答案中不可用。
答案 0 :(得分:0)
由于需要包含django模块,运行它的更好方法是
python manage.py shell < dashboard/email_excel_reports.py