line 934 in sqlhtml.py On Wed, Feb 17, 2010 at 2:10 PM, Wes James <[email protected]> wrote: > I'm noticing now why this is a problem. When I put [] in the field > and submit it, it gets processed and comes out '[]' instead of just > []. If it is a StringListProperty, shouldn't that come out [] not > '[]'? > > -wes > > On Wed, Feb 17, 2010 at 1:57 PM, mdipierro <[email protected]> wrote: >> because now >> >> db.table.insert(yourlistfield=.....) >> >> has to be a list. You need to create a validator that takes the input >> and filters it into a list. I cannot write that for you since it >> depends on how you insert the data. >> >> On Feb 17, 12:57 pm, Wes James <[email protected]> wrote: >>> 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 <[email protected]> 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 <[email protected]> >>> > 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 <[email protected]> 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 <[email protected]> >>> >>> 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 <[email protected]> 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 <[email protected]> >>> >>> >> 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 <[email protected]> >>> >>> >> > 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 <[email protected]> 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 <[email protected]> >>> >>> >> >>> 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 [email protected]. >>> >>> >> >> To unsubscribe from this group, send email to >>> >>> >> >> [email protected]. >>> >>> >> >> 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 [email protected]. >>> >>> > To unsubscribe from this group, send email to >>> >>> > [email protected]. >>> >>> > 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 [email protected]. >>> >> To unsubscribe from this group, send email to >>> >> [email protected]. >>> >> 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 [email protected]. >> To unsubscribe from this group, send email to >> [email protected]. >> 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 [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/web2py?hl=en.

