Djangoの以下のコードは、常に同じ結果を出力しています。 mysql DBにさらに多くの行があっても。助けてください。Django Mysqlはループでクエリを実行していますが、同じ出力を得ています
while True: print Event.objects.last().id time.sleep(5)
====編集==== 私は逃した何か重要なことがありました。上記は適切な結果を示していますが、以下は正しくありません。私はここでスレーブdbを使用しています。しかし、疑問はまだ変わっていません。これは、問題を作り出しているスレーブのDB設定があることを意味しますか?
while True: print Event.objects.using("read").last().id time.sleep(5)
私はdjangoがクエリーセットをリクエストスレッドにキャッシュすると思います。これをさらに実行すると、同じ値が返されます。 –
はい、djangoはクエリをキャッシュしているようですが、どうすればよいですか。 connection.close()とtransaction.commit()も役に立ちませんでした。 – Deepak