所以我的问题与 django 中的子流程有关

问题描述 投票:0回答:0
def Summary(request):
        # Call the generate_question_and_choices function
    output = generate_question_and_choices(1, key_distractor_list, keyword_sentence_mapping)
    # Create a new text file and write the output to it
    file_path = os.path.join(os.getcwd(), 'questions.txt')
    with open(file_path, 'w') as f:
        f.write(output)
    # Open the file for reading and return it as an HTTP response
    with open(file_path, 'r') as f:
        file_data = f.read()
    response = HttpResponse(file_data, content_type='text/plain')
    response['Content-Disposition'] = 'inline; filename="questions.txt"'
    return response

所以这个函数我用它来从 mcq generate 中获取输出我想将输出添加到一个新文件 question.txt 并且只是在第一次启动程序时显示它这很好但我有一个功能

def open_new(request):
    python_executable = sys.executable
    subprocess.call([python_executable, "CustomerHome/generate_MCQ.py"])
    Summary(request)
    
    

def restart(request):
    open_new(request)
    return render(request, 'Home.html')

在使用按钮的地方我重新执行我的程序,以便我可以获得相应输入的输入。

在上述情况下,问题是当我上传一个文本文件并生成其输出时,通过查看终端可以清楚地看到 mcq 生成器正在生成输出,问题是 Summary() 函数在子进程之后没有被执行程序,以便文本文件 questions.txt 不会被新输出覆盖

我认为 Summary() 函数未正确调用,因此 questions.txt 不会被新输出覆盖。

javascript python django nlp subprocess
© www.soinside.com 2019 - 2024. All rights reserved.