我是Django的新手,我正在尝试像在views.py中那样,在脚本中导入我的一个模型。但是我遇到了一个错误:
Traceback (most recent call last):
File "CallCenter\make_call.py", line 3, in <module>
from .models import Campaign
ModuleNotFoundError: No module named '__main__.models'; '__main__' is not a package
我的文件结构如下:
MyApp\CallCenter\
CallCenter包含__init__.py
、make_call.py
、models.py
和views.py
,而MyApp有manage.py
。
from twilio.rest import Client
from twilio.twiml.voice_response import VoiceResponse, Say, Dial, Number, VoiceResponse
from .models import Campaign
def create_xml():
# Creates XML
response = VoiceResponse()
campaign = Campaign.objects.get(pk=1)
response.say(campaign.campaign_text)
return response
xml = create_xml()
print(xml)
make_call.py
的?在CallCenter
应用程序目录中使用python make_call.py
是行不通的。 - AKXdjango.setup()
),这是必须的,以便能够使用你的模型等等... 如果你想使用Django运行类似命令行的脚本,请创建一个管理命令,这样你就可以使用manage.py
运行它,它会为你做正确的设置。 - dirkgroten