What you are doing SHOULD work.  I use SearchableModel with many lines
in a TextProperty, plus StringProperties, ListProperties, and others.
I have 20+ indexes explicitly defined for this core class, and it all
works quite well.

I don't see anything wrong in your class declaration below (other
than, perhaps, the setting indexed=false on the TextProperty ... I
haven't tried that).

Two possible ways to explore:

- Pardon for asking, but are you positive the error message is about
the Item class you defined?
- What indexes do you have defined in index.yaml for Item?


On May 12, 9:58 am, Ben <[email protected]> wrote:
> Ok, thank you for the response.  I was just worried i was missing
> something obvious.  My method of keeping only the title property as
> searchable model, and the rest of the fields as normal DB models does
> work fine, just didn't seem the most efficient way to do it.  but it
> looks like that is the way to go.  thank you for the response!
>
> On May 12, 3:35 am, baytiger <[email protected]> wrote:
>
> > TextProperty and BlobProperty are ALREADY not indexed. So it doesn't
> > make any difference.
>
> > The problem with the searchable model is that it makes a few extra
> > rows in your database that contains among other things a list of all
> > the words that appear in your TextProperty. This means that it runs
> > out of indexes and explodes and gives you the too many indexes error.
>
> > There is no way around this. Its, unfortunately, a pitfall of the
> > system. I think we can assume that Google is working on it. But nobody
> > knows when it will be ready. It is likely that their database
> > structure was not built for such large indexes.
>
> > On May 12, 1:57 am, Ben <[email protected]> wrote:
>
> > > I thought maybe the 1.2.2 update with the addition of "indexed=false"
> > > would solve this problem for me, but it doesn't seem to have any
> > > effect.  I can move the title into a separate property is i mentioned
> > > above and that works ok, but i feel like i must be missing some other
> > > obvious solution here.  my property is set like so:
>
> > > -----
> > > class Item(search.SearchableModel):
> > >   title = db.StringProperty(required=True)
> > >   category = db.IntegerProperty()
> > >   product =  db.IntegerProperty()
> > >   priority = db.IntegerProperty()
> > >   description = db.TextProperty(indexed=False)
> > >   contributors = db.StringProperty()
> > > -----
>
> > > any ideas?
>
> > > On May 9, 12:20 am, 风笑雪 <[email protected]> wrote:
>
> > > > SDK 1.2.2 can use "indexed=False" parameter on property constructor now.
>
> > > > 2009/5/9 Ben <[email protected]>
>
> > > > > I didn't figure out what was causing the problem, but i solved it by
> > > > > moving my "Title"  string prop to a separate searchable class with a
> > > > > reference property, and leaving the "description" in a standard db
> > > > > model.  might not work for everyone but solved my problem. thanks for
> > > > > the help.
>
> > > > > On May 8, 10:11 am, Devel63 <[email protected]> wrote:
> > > > > > You should be able to have a searchable TextProperty and a
> > > > > > StringProperty.  I do.  If the advice below doesn't help, try 
> > > > > > posting
> > > > > > your class definition here.
>
> > > > > > On May 7, 10:27 am, ryan 
> > > > > > <[email protected]<ryanb%[email protected]>>
> > > > > wrote:
>
> > > > > > >http://code.google.com/appengine/docs/python/datastore/queriesandinde.
> > > > > ..
> > > > > > > describes this error.
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to