[Grok-dev] Trying to search with zc.catalog
Peter Bengtsson
peter at fry-it.com
Mon Jul 7 07:55:34 EDT 2008
Hi, I've been following this:
http://grok.zope.org/documentation/how-to/implementing-search
with the exception that didn't use zc.catalog==1.1.1 but just zc.catalog.
The indexes are set up like this:
from grok import index
class RecipeIndexes(grok.Indexes):
grok.site(TheGrokWay)
grok.context(IRecipe)
grok.name('recipe_catalog')
title = index.Text()
...more indexes
The Search view looks like this:
from hurry.query.query import Query, Text
from hurry.query import Eq
class Search(Master):
grok.context(TheGrokWay)
def update(self, q=None):
if q:
result = Query().searchResults(
Eq(('recipe_catalog', 'title'), q)
)
print result or something fun with the results
2008-07-07T12:43:32 ERROR SiteError http://localhost:9080/thegrokway/search
Traceback (most recent call last):
File "/home/peterbe/buildout-eggs/tmpLjcktJ/zope.publisher-3.5.0a1.dev_r78838-py2.4.egg/zope/publisher/publish.py",
line 133, in publish
File "/home/peterbe/buildout-eggs/tmp_TGW-i/grok-0.12.1-py2.4.egg/grok/publication.py",
line 45, in callObject
File "/home/peterbe/buildout-eggs/tmpbJjpQ5/zope.app.publication-3.4.2-py2.4.egg/zope/app/publication/zopepublication.py",
line 167, in callObject
File "/home/peterbe/buildout-eggs/tmpLjcktJ/zope.publisher-3.5.0a1.dev_r78838-py2.4.egg/zope/publisher/publish.py",
line 108, in mapply
- __traceback_info__: <thegrokway.app.Search object at 0x97b93ec>
File "/home/peterbe/buildout-eggs/tmpLjcktJ/zope.publisher-3.5.0a1.dev_r78838-py2.4.egg/zope/publisher/publish.py",
line 114, in debug_call
File "/home/peterbe/buildout-eggs/tmp_TGW-i/grok-0.12.1-py2.4.egg/grok/components.py",
line 132, in __call__
File "/home/peterbe/buildout-eggs/tmpLjcktJ/zope.publisher-3.5.0a1.dev_r78838-py2.4.egg/zope/publisher/publish.py",
line 108, in mapply
- __traceback_info__: <bound method Search.update of
<thegrokway.app.Search object at 0x97b93ec>>
File "/home/peterbe/buildout-eggs/tmpLjcktJ/zope.publisher-3.5.0a1.dev_r78838-py2.4.egg/zope/publisher/publish.py",
line 114, in debug_call
File "/home/peterbe/dev/GROK/TheGrokWay/src/thegrokway/app.py", line
221, in update
result = Query().searchResults(
File "/home/peterbe/buildout-eggs/hurry.query-0.9.2-py2.4.egg/hurry/query/query.py",
line 20, in searchResults
results = query.apply()
File "/home/peterbe/buildout-eggs/hurry.query-0.9.2-py2.4.egg/hurry/query/query.py",
line 144, in apply
return self.getIndex().apply((self.value, self.value))
File "/home/peterbe/buildout-eggs/hurry.query-0.9.2-py2.4.egg/hurry/query/query.py",
line 133, in getIndex
index = super(FieldTerm, self).getIndex()
File "/home/peterbe/buildout-eggs/hurry.query-0.9.2-py2.4.egg/hurry/query/query.py",
line 113, in getIndex
catalog = zapi.getUtility(ICatalog, self.catalog_name)
File "/home/peterbe/buildout-eggs/zope.component-3.4.0-py2.4.egg/zope/component/_api.py",
line 207, in getUtility
raise ComponentLookupError(interface, name)
ComponentLookupError: (<InterfaceClass
zope.app.catalog.interfaces.ICatalog>, 'recipe_catalog')
--
Peter Bengtsson,
work www.fry-it.com
home www.peterbe.com
hobby www.issuetrackerproduct.com
More information about the Grok-dev
mailing list