I removed all the data and tweaked the model a bit so all it looks like is:

if request.env.web2py_runtime_gae:
    db = DAL('gae')
    session.connect(request, response, db=db) # and store sessions and
tickets there
else:
    db = DAL('sqlite://storage.sqlite')

from gluon.tools import *
crud=Crud(globals(),db)

from gluon.contrib.gql import gae

db.define_table('ideModelAPI',
    Field('ideModelAPIitem','string'),
    Field('ideModelAPITip','text'),
    Field('ideModelAPIkey',type=gae.StringListProperty())
    )


but when I go to /app/

/app/default/controller/create/table

and submit the data, I still get:

BadValueError: Property ideModelAPIkey must be a list

This is even with a blank value, or [], or ['a'] for tests.

Is there something wrong with gql.py?

-wes

On Wed, Feb 17, 2010 at 9:56 AM, Wes James <compte...@gmail.com> wrote:
> After some changes when I try to add an entity on gae through their
> interface, the StringListProperty field does not even show for me to
> put data in it.
>
> If I edit a record that already has some data, the StringListProperty
> field has [] in it, but if I leave it blank or add some data like
> ['a','b'] I get the error:
>
> ...'
>
> File 
> "/base/data/home/apps/web2pyapi/1.339952435474722330/gluon/contrib/gql.py",
> line 719, in update
>    setattr(item, field, value)
>  File "/base/python_lib/versions/1/google/appengine/ext/db/__init__.py",
> line 472, in __set__
>    value = self.validate(value)
>  File "/base/python_lib/versions/1/google/appengine/ext/db/__init__.py",
> line 2731, in validate
>    raise BadValueError('Property %s must be a list' % self.name)
> BadValueError: Property ideModelAPIkey must be a list
>
> What is it about blank, or even [] or ['a','b'] that is not a list?
>
> and why is google interface not providing a field for adding a list
> value for that field?
>
> -wes
>
> On Wed, Feb 17, 2010 at 9:09 AM, mdipierro <mdipie...@cs.depaul.edu> wrote:
>> As far as web2py is concerned you just change the type.
>> As far as GAE is concerned I do not know.
>> Try and see what happens.
>>
>>
>> On Feb 17, 9:56 am, Wes James <compte...@gmail.com> wrote:
>>> OK.  That field is a text field on gae now, how do I change it to
>>> gae.StringListProperty type?
>>>
>>> On Tue, Feb 16, 2010 at 9:50 PM, mdipierro <mdipie...@cs.depaul.edu> wrote:
>>> > You are mixing gae syntax and dal syntax.
>>>
>>> > This is only allowed in
>>>
>>> > from gluon.contrib.gql import gae
>>> > db.define_table('mytable',Field('this_is_a_list',type=gae.StringListProperty()))
>>>
>>> > queries must use dal syntax.
>>>
>>> > On Feb 16, 5:46 pm, Wes James <compte...@gmail.com> wrote:
>>> >> There does not seem to be an .all().   How should the line be written?
>>>
>>> >> thx,
>>>
>>> >> -wes
>>>
>>> >> On Tue, Feb 16, 2010 at 4:25 PM, Wes James <compte...@gmail.com> wrote:
>>> >> > so if I created a field
>>>
>>> >> > Field('fieldKey', 'text')
>>>
>>> >> > and put ['web2py', 'web2p', 'web2', 'web', 'we', 'w'], in for the
>>> >> > value and then did
>>>
>>> >> > query=request.vars._query
>>>
>>> >> > rows=db(db.table.all().filter('fieldKey >=', query).filter('fieldKey
>>> >> > <', query + u'\ufffd')).select(db.table.ALL,
>>> >> > orderby=db.table.tableitem)
>>>
>>> >> > this would work?
>>>
>>> >> > On Sun, Feb 14, 2010 at 3:57 AM, Richard <richar...@gmail.com> wrote:
>>> >> >> sounds like this will be useful.
>>>
>>> >> >> StringListProperty is a native gae type now supported by web2py:
>>> >> >>http://code.google.com/appengine/docs/python/datastore/typesandproper...
>>> >> >>http://groups.google.com/group/web2py/browse_thread/thread/7d284c9fa4...
>>>
>>> >> >> To get around the like problem you can do something like this:
>>> >> >> Model.all().filter('ngrams >=', word).filter('ngrams <', word +
>>> >> >> u'\ufffd')
>>>
>>> >> >> Check out Thadeus's code for a full example.
>>>
>>> >> >> There's also info how to do this in the docs:
>>> >> >>http://code.google.com/appengine/docs/python/datastore/queriesandinde...
>>>
>>> >> >> Richard
>>>
>>> >> >> On Feb 14, 1:52 pm, Wes James <compte...@gmail.com> wrote:
>>> >> >>> Richard,
>>>
>>> >> >>> Do you have a python example of this?  I'll check on
>>> >> >>> StringListProperty also and see how it works. (would this work on
>>> >> >>> gae?) I was trying somthing else since like is not supported, but 
>>> >> >>> this
>>> >> >>> might work.  I would like this site to provide quick search on
>>> >> >>> anything that would be helpful in building a web2py app.  There are a
>>> >> >>> lot of things in tools.py that could go here for instance, and maybe
>>> >> >>> another page with docstrings?  Whatever anyone thinks would be
>>> >> >>> helpful.
>>>
>>> >> >>> -wes
>>>
>>> >> >>> On Sat, Feb 13, 2010 at 4:26 PM, Richard <richar...@gmail.com> wrote:
>>> >> >>> > hi wes,
>>>
>>> >> >>> > something like this could be really nice for browsing the function
>>> >> >>> > docstrings. Do you intend to take it further?
>>>
>>> >> >>> > If you use a StringListProperty to store all the ngrams (eg: 
>>> >> >>> > web2py,
>>> >> >>> > web2p, web2, web, we, w) then it could match partial words.
>>>
>>> >> >>> > Richard
>>>
>>> >> >> --
>>> >> >> You received this message because you are subscribed to the Google 
>>> >> >> Groups "web2py-users" group.
>>> >> >> To post to this group, send email to web...@googlegroups.com.
>>> >> >> To unsubscribe from this group, send email to 
>>> >> >> web2py+unsubscr...@googlegroups.com.
>>> >> >> For more options, visit this group 
>>> >> >> athttp://groups.google.com/group/web2py?hl=en.
>>>
>>> > --
>>> > You received this message because you are subscribed to the Google Groups 
>>> > "web2py-users" group.
>>> > To post to this group, send email to web...@googlegroups.com.
>>> > To unsubscribe from this group, send email to 
>>> > web2py+unsubscr...@googlegroups.com.
>>> > For more options, visit this group 
>>> > athttp://groups.google.com/group/web2py?hl=en.
>>
>> --
>> You received this message because you are subscribed to the Google Groups 
>> "web2py-users" group.
>> To post to this group, send email to web...@googlegroups.com.
>> To unsubscribe from this group, send email to 
>> web2py+unsubscr...@googlegroups.com.
>> For more options, visit this group at 
>> http://groups.google.com/group/web2py?hl=en.
>>
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"web2py-users" group.
To post to this group, send email to web...@googlegroups.com.
To unsubscribe from this group, send email to 
web2py+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/web2py?hl=en.

Reply via email to