Thanks for the input. Niphlod: I tried cacheable=True but seemed to make no difference on GAE SDK
Christian: adding ".as_dict()" rather than the suggested ".to_dict" on the select statement does seem to work. The caching code then becomes: students = cache.ram('students', lambda:db(db.student.id>0).select(db.student.id, db.student.family_name, ... db.student.student_age).as_dict(), 3600) This seems to read to/from memcache correctly, but students is now a dictionary rather than a row object, which seems to break my views. In the past I iterated through the row objects to list them on screen using something like: {{for student in students:}} <tr> <td>{{=student.family_name}}</td> ... <td>{{=student.student_age}}</td> </tr> {{pass}} This doesn't seem to work now that students is a dictionary object. No idea how I need to change this! Thanks again, Andy On Tuesday, February 19, 2013 3:07:20 AM UTC+4, howesc wrote: > > cacheable=True is a newish option to selects right? i've not yet used > it....and had forgotten about it. > > cfh > > On Monday, February 18, 2013 7:17:02 AM UTC-8, Niphlod wrote: >> >> cacheable=True does not help ? >> >> On Monday, February 18, 2013 4:11:13 PM UTC+1, howesc wrote: >>> >>> ah yes.... >>> >>> the Rows() object returned from a select is not pickable. >>> >>> i do this a lot: >>> >>> students = cache.ram('students', >>> lambda:db(db.student.id>0).select(db.student.id >>> , >>> db.student.family_name, >>> ... >>> db.student.student_age).to_dict(), >>> 3600) >>> >>> >>> On Sunday, February 17, 2013 10:09:18 PM UTC-8, Andy W wrote: >>>> >>>> Thanks for the feedback Christian. >>>> >>>> It seems to be this that causes the problem on GAE but works on sqlite: >>>> >>>> students = cache.ram('students', >>>> lambda:db(db.student.id>0).select(db.student.id >>>> , >>>> db.student.family_name, >>>> ... >>>> db.student.student_age), >>>> 3600) >>>> >>>> Any ideas? >>>> >>>> Thanks, >>>> Andy >>>> >>>>> >>>>>> -- --- You received this message because you are subscribed to the Google Groups "web2py-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to web2py+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.