次のコードがあります。
@task()
def handle_upload(title, temp_file, user_id):
.
.
.
photo.save()
#if i insert here "photo2 = Photo.objects.get(pk=photo.pk)" it works, including the view function
return photo.pk
#view function
def upload_status(request):
task_id = request.POST['task_id']
async_result = AsyncResult(task_id)
photo_id = async_result.get()
if async_result.successful():
photo = Photo.objects.get(pk=photo_id)
アップロードされたファイルを確認するために ajax リクエストを使用しますが、セロリ タスクが終了した後、Photo matching query does not exist が表示されます。写真 pk は存在し、返されます。データベースに手動でクエリを実行すると、機能します。これはある種のデータベースラグですか? どうすれば修正できますか?Django 1.4 と Celery 3.0 を使用しています