0

デフォルトのSatchmo検索リスナーを使用したくありません。代わりに、独自の検索リスナーを作成しました。

デフォルトの検索リスナーを切断するのに最適な場所はどこですか?

# This is what I need to do...
from satchmo_store.shop.listeners import default_product_search_listener
application_search.disconnect(default_product_search_listener, sender=Product)

__init__.py私は自分のアプリと自分のアプリでそれを実行しようとしましたが、Satchmoが実際にSignalを実行する前にmodels.py両方が実行されたように見えたため、適切に切断されません。Satchmoがすでにリスナーに接続していることを確認できるように、切断コードをどこで実行できますか?connect

4

2 に答える 2

1

INSTALLED_APPSでSatchmoとアプリの順序を入れ替えてみてください。

于 2011-03-27T01:30:15.860 に答える
1

この質問への答えは、より一般的にはDjangoスタートアップコードをどこに置くかによって答えられます。

initでこれを行うミドルウェアを作成し、その後django.core.exceptions.MiddlewareNotUsedをinitから起動すると、djangoはすべてのリクエストでそれを削除します...

独自のミドルウェアの作成については、Djangoのドキュメントを参照してください。

于 2011-03-28T20:36:06.980 に答える