1

こんにちは、読んでいただきありがとうございます。私はDjangoで簡単なサイトを作成しています.Postgresデータベースに対して作成している生のSQLで非常に単純な更新ステートメントを持っています. ここで何かが問題を起こしています:

from django.http import HttpResponse
from django.db import connection, transaction

def rsvp_update(request, rsvp_id, status):
  cursor = connection.cursor()
  cursor.execute("UPDATE public.rsvp SET status=%s WHERE rsvp_id = %s", [status, rsvp_id])
  transaction.commit()
  return HttpResponse('okay')

「TransactionManagementError at [URL] This code does not under transaction management」というエラーが表示されます。何か案は?

4

1 に答える 1

6

commit_manuallyトランザクションを手動で管理するコードには、デコレータを使用する必要があります。

于 2013-04-01T22:25:30.077 に答える