0

奇妙な問題が発生したときに、mod_python、python、およびSQL Alchemyを使用してWebサイトで作業してきました。データベースにすべてのレコードを照会すると、正しい結果セットが返されます。ただし、ページを更新すると、同じ結果セットが追加された結果セットが返されます。ページをさらに更新すると、より多くの結果セットが互いに「スタック」されます。

例えば:

最初のページの読み込み:10件の結果

2ページ目の読み込み:20件の結果(各2件)

3ページ目の読み込み:30件の結果(各3件)

等...

これはmod_pythonの根本的な問題ですか?mod_wsgiを使用しているときにこれに遭遇したことを覚えていません。

4

2 に答える 2

0

聞いたことはありませんが、コードを見ないとわかりません。

結果セット リストをグローバルまたは共有メンバーとして初期化し、アプリケーションが呼び出されたときに結果を空にリセットせずに追加したのではないでしょうか? リストを誤って再利用する古典的な方法は、関数のデフォルトの引数値にリストを入れることです。

(もちろん mod_wsgi でも同じことが起こります。)

于 2009-08-19T16:13:55.093 に答える
0

あなたが使っている技術については知りません。ただし、使用しているパッケージのバグである可能性があると考える前に、1 つのことを考慮する必要があります。

オッカムのかみそり。

基本的には、「まったく同じ予測を行う 2 つの競合する理論がある場合、単純な方が優れている」ということです。

ここで考えられる 2 つの主要な理論は、使用しているコンポーネントにバグがある (他の多くの人が使用している) か、コードにバグがあるというものです。コードにバグがある可能性があります (申し訳ありません)。

私はこのアイデアを自分のコードで使用していますが、問題が発生するたびに、それが私のコードであることが判明しました。

うまくいけば、他の人があなたをバグに誘導し、問題のコードを投稿したくなるかもしれません。結果セットをクリアしていないか、何か (変数) が予想よりも長く保持されている可能性があります。

于 2009-08-19T17:34:23.590 に答える