I think DAL has nothing to do with Mongo. It is much easier to use only PyMongo API.
What we really need is a "Rows factory" it shoul take arbitrary data format (can have a scheme) and will give us back a Rows object. Also it should have some event binders to update, delete, insert... So programmers will do this: mydata = pymongo.whatever() # pymongo dict like objects rows = gluon.RowsFactory(mydata, scheme=myscheme, updater=lambda, inserter=lambda, deleter=lambda) now we should have a "Rows" object and it could be used for grid, forms etc... The problem is that it can take long time to convert things in to Rows. So the best should be a dict + events based Form, grid and other controls designed specifically for these cases. Bruno Rocha http://rochacbruno.com.br mobile Em 26/11/2012 04:06, "Mark Kirkwood" <mark.kirkw...@gmail.com> escreveu: > I am wondering if there are some deeper issues getting NoSQL support in > Web2py - for instance the model part seems pretty tied into relational > ideas (e.g db.define_table and ..references db.dog etc). This design works > really well and insulates developers from much of the fiddlyness of dealing > directly with relation db's quirks, but the ideas themselves are clearly > relational. > > The other big DAL issue would be joins..but I guess integration with GAE > has covered that to some extent (tho it looks like GAE can kinda fake a > join with referenced properties...might be able to do something like that > with Mongo, but not for all other NoSQLs). > > On Wednesday, November 21, 2012 11:58:35 PM UTC+13, Niphlod wrote: >> >> that is exactly the explanation of the term "experimental". >> The problem as always is that if noone starts to test it, it will be in >> this way forever. >> >> On Tuesday, November 20, 2012 11:25:59 PM UTC+1, Simon Ashley wrote: >>> >>> The bottom line seems to be that we/ others need to start to use nosql >>> engines to sort the issues. >>> My guess is that, currently, critical mass is not present to rely on it >>> for production sites. >>> >>> -- > > > > --