Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Django芹菜:任务未更新数据库_Python_Django_Celery - Fatal编程技术网

Python Django芹菜:任务未更新数据库

Python Django芹菜:任务未更新数据库,python,django,celery,Python,Django,Celery,我有django应用程序,它使用芹菜 @task(name="execute_java_task") def execute_java_task(solution_id, stdin=None, stdout=None): logger.info("Task started") s = Solution.objects.get(pk=solution) s.solved = True s.save() 当用户提交表单时调用此任务 @login_required

我有django应用程序,它使用芹菜

@task(name="execute_java_task")
def execute_java_task(solution_id, stdin=None, stdout=None):
    logger.info("Task started")
    s = Solution.objects.get(pk=solution)
    s.solved = True
    s.save()
当用户提交表单时调用此任务

@login_required
def submit(request, question_id):
    form = SolutionForm(request.POST or None, request.FILES or None)
    if form.is_valid():
        f = form.save(commit=False)
        f.user_id = request.user
        f.question_id = get_object_or_404(Question, 
                                          pk=question_id)

        # Checks if the user is re-submitting a solved question.
        rows = Solution.objects.filter(user_id=request.user,
                                       question_id=question_id)
        for row in rows:
            if row.solved:
                messages.success(request, "You have already solved this question.")
                return redirect('index')

        latest_id = Solution.objects.latest('id').id
        if f.language == 'cpp':
            execute_cpp_task.delay(latest_id+1)
        else:
            execute_java_task.delay(latest_id+1)


        f.save()
        messages.success(request, "Submitted successfully")
        return redirect('index')
    return render(request, 'main/form.html', {'form': form})
但是数据库没有得到更新。
这是芹菜工人信息-

您是否安装和配置了
django芹菜
?@limellights是的。我添加了工人信息。好的,我想我知道了,但仍有疑问,每次代码更改后是否需要重新启动工人信息?是的,您需要重新启动。但是我看到你的任务有s=
Solution.objects.get(pk=Solution)
并且应该是
Solution\u id
你是否安装和配置了
django芹菜
?@limlights是的。我添加了工人信息。好的,我想我知道了,但仍然有疑问,每次代码更改后我是否需要重新启动工人信息?是的,你需要重新启动。但是我看到您的任务有s=
Solution.objects.get(pk=Solution)
并且应该是
Solution\u id