1

修正方法がわからないという小さな問題があります。

まず、magento を修正済みの実際のバージョンに更新することはできません。だから、私はこのバグを修正するための代替手段を探しています.magentoリリースでどのように修正されたのかわかりません。そのため、ここで質問しています.

次に、Magento 1.3.2.4 を使用しています

高度な検索システムで検索を行い、結果を価格で並べ替えようとすると、次のメッセージが表示されます。

You cannot define a correlation name '_price_order_table' more than once

Stackoverflow や他の Web サイトで、次のようないくつかの潜在的な答えを既に見つけました: Magento - catalog/product_list ブロックを複数回使用する

しかし、それは私の場合ではありません。レイアウト xml ファイルに重複するブロックはありません。

このエラー メッセージが表示される理由がわかる方はいらっしゃいますか? 同じエイリアスを持つ同じテーブルで「左結合」を重複して使用しているようですが、どこを見つけることができますか?

これを最後まで読んでくれた人、特に私を助けて答えてくれた人に本当に感謝しています! :-)

4

1 に答える 1

1

とにかく...完璧な解決策を探してmagentoをデバッグするには、この質問に多くの時間を費やしました。

最後に、例外がスローされた 760 行目の /lib/Zend/db/Select.php にコメントを付けました。例外がスローされても、並べ替えは機能します。

このファイルのサンプルで、行がコメント化されています。

    if (!empty($correlationName)) {
            if (array_key_exists($correlationName, $this->_parts[self::FROM])) {
                /**
                 * @see Zend_Db_Select_Exception
                 */
                #require_once 'Zend/Db/Select/Exception.php';
                //throw new Zend_Db_Select_Exception("You cannot define a correlation name '$correlationName' more than once");
            }

数時間前にこの問題を検索し始めたときに、Web 上のどこかで提案を見ました。とにかく、それはいつも同じです: 助けを求めるとき、私は素晴らしい修正をあきらめ、最終的に回避策を受け入れます.

これがいつか誰かに役立つことを願っています。誰かが他の解決策を見つけたら、共有してください! ;-)

于 2012-06-12T14:56:49.737 に答える