我在Django框架中有chatbot Web应用程序。到目前为止,一切正常,但是现在,我想使用ajax运行chatbot python脚本,并从Javascript文件中调用该视图的视图。我有一个使用REST的API和python脚本的视图以及调用该视图的ajax。

view.py:

from chat.chatbot1 import main_chatbot

def run_python_script(request):
    os.system('python3 main_chatbot.py')
    return HttpResponse("OK")


index.js:

 function run_chatbot_script(){
     $.ajax({
        type: 'GET',
        url: 'http://127.0.0.1:8000/chatbot/run_python_script/',});


python脚本文件夹位于chatbot django项目内的聊天应用程序中。

问题是视图无法找到文件,并且出现此错误:

python3: can't open file 'main_chatbot.py': [Errno 2] No such file or directory

最佳答案

如果位于同一文件夹中,则应将其导入:

示例if与view.py处于同一文件夹

import .run_python_script


然后只需调用所需的功能即可...
您也可以将完整路径放在os.system中,但这似乎并不好...

09-16 10:32