[Erp5-report] r13449 - /erp5/trunk/products/CMFCategory/CategoryTool.py
nobody at svn.erp5.org
nobody at svn.erp5.org
Fri Mar 16 10:47:50 CET 2007
Author: romain
Date: Fri Mar 16 10:47:49 2007
New Revision: 13449
URL: http://svn.erp5.org?rev=13449&view=rev
Log:
Calling buildSQLQuery is slower than using a parameter to the ZSLMethod, so
portal_type parameter is restored.
Modified:
erp5/trunk/products/CMFCategory/CategoryTool.py
Modified: erp5/trunk/products/CMFCategory/CategoryTool.py
URL: http://svn.erp5.org/erp5/trunk/products/CMFCategory/CategoryTool.py?rev=13449&r1=13448&r2=13449&view=diff
==============================================================================
--- erp5/trunk/products/CMFCategory/CategoryTool.py (original)
+++ erp5/trunk/products/CMFCategory/CategoryTool.py Fri Mar 16 10:47:49 2007
@@ -42,7 +42,6 @@
from Products.CMFCore.PortalFolder import ContentFilter
from Products.CMFCategory.Renderer import Renderer
from OFS.Traversable import NotFound
-from Products.ZSQLCatalog.SQLCatalog import Query, ComplexQuery
import re
@@ -1296,22 +1295,22 @@
for base_category in base_category_list:
category_list.append("%s/%s" % (base_category, context.getRelativeUrl()))
- if portal_type is not None:
- portal_type_query = Query(portal_type=portal_type)
- if query is None:
- query = portal_type_query
- else:
- query = ComplexQuery(query, portal_type_query, operator='AND')
-
- # XXX Is Base_zSearchRelatedObjectsByCategoryList still usefull ?
- # It may possible to call portal catalog directly
- # Base_zSearchRelatedObjectsByCategoryList add a dependency to ERP5
- query = self.portal_catalog.buildSQLQuery(query=query)
- brain_result = self.Base_zSearchRelatedObjectsByCategoryList(
- category_list=category_list,
- strict_membership=strict_membership,
- where_expression=query['where_expression'],
- order_by_expression=query['order_by_expression'],)
+ if query is not None:
+ query = self.portal_catalog.buildSQLQuery(query=query)
+ # XXX Is Base_zSearchRelatedObjectsByCategoryList still usefull ?
+ # It may possible to call portal catalog directly
+ # Base_zSearchRelatedObjectsByCategoryList add a dependency to ERP5
+ brain_result = self.Base_zSearchRelatedObjectsByCategoryList(
+ category_list=category_list,
+ portal_type=portal_type,
+ strict_membership=strict_membership,
+ where_expression=query['where_expression'],
+ order_by_expression=query['order_by_expression'],)
+ else:
+ brain_result = self.Base_zSearchRelatedObjectsByCategoryList(
+ category_list=category_list,
+ portal_type=portal_type,
+ strict_membership=strict_membership)
result = []
for b in brain_result:
More information about the Erp5-report
mailing list