1

私はこのQuerySetを持っています:

brand = get_object_or_404(Brand, shortcut=shortcut)
ads = Ad.objects.filter(mod__submodel__model__brand = brand).values('id')

しかし、何らかの理由でdjangoは同じクエリを5回実行します(クエリの数は行の数に依存しません)。はい、これ:

SELECT ••• FROM "catalog_ad" INNER JOIN "catalog_mod" ON ("catalog_ad"."mod_id" = "catalog_mod"."id") INNER JOIN "catalog_submodel" ON ("catalog_mod"."submodel_id" = "catalog_submodel"."id") INNER JOIN "catalog_model" ON ("catalog_submodel"."model_id" = "catalog_model"."id") WHERE "catalog_model"."brand_id" = 1 LIMIT 21

では、なぜdjangoは同じクエリを5回実行するのでしょうか?

更新:adsこれは、次のようにコンテキストプロセッサに渡すときにのみ発生します。

return render(request, 'cat.html', {ads:ads})
4

1 に答える 1

1

これは非常にばかげた問題でした。これは、djangoが必要なテンプレートを見つけることができず、DEBUGに設定されている場合にのみ発生しtrueます。

于 2012-07-08T07:55:34.513 に答える