Can I save a formula in it? 2009/5/25 mdipierro <mdipie...@cs.depaul.edu>
> > you are right. it was just an example > > On May 25, 12:45 am, Alexey Nezhdanov <snak...@gmail.com> wrote: > > I think that's handy. Dropping cross-db compartibility is bad indeed, > > but you just need to have a big warning in the place where user have > > to make that choice. > > > > Also - I don't think that you can safely replace ' with " on pickled > > object. Most likely you are ruining it. Either proper sql escaping > > should be introduced or better yet - base64 encoding. If I am not > > mistaken - pickled objects are binary. > > > > On May 25, 9:17 am, mdipierro <mdipie...@cs.depaul.edu> wrote: > > > > > I do not know if this is a good idea and I'd like to hear your > > > opinions: > > > I have added in trunk to define custom column types > > > > > Here is an example of usage: > > > > > import cPickle > > > from gluon.sql import SQLCustomType > > > from decimal import Decimal > > > > > decimal = SQLCustomType(native='NUMERIC(10,2)',decoder=(lambda x: > > > Decimal(str(x)))) > > > > > pickable = SQLCustomType(type='text',encoder=(lambda x: > > > "'%s'"%cPickle.dumps(x).replace("'","''")),decoder=(lambda x: > > > cPickle.loads(x))) > > > > > db.define_table('test', > > > SQLField('my_decimal',type=decimal), > > > SQLField('my_pickle',type=pickable)) > > > > > the SQLCustomType constructor takes the following arguments: > > > - type indicates how web2py sqlform should treat this field > > > - native indicates how the database should treat this field > > > - encoder indicates how to represent (and escape) a value in SQL > > > - decoder indicates how to process the value once it is extracted from > > > the database > > > > > It seems to work well with migrations. Of course using native=.... > > > makes the custom table not portable across databases. > > > > > The implementation is not very clean but can be improved. > > > > > Is this a good idea? > > > > > Massimo > > > > > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "web2py Web Framework" group. To post to this group, send email to web2py@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 -~----------~----~----~----~------~----~------~--~---