> > Sorry, I was referring to > > db.table.field.writable = False # change the field to writable false > > >> Second, even something like the above wouldn't be a problem for >> concurrent users, as the above would all happen within a single request and >> therefore only apply to that one request. Setting a field to writable in >> one request does not affect it another request. >> > > I am not sure if I understand this for db.table.field.writable. The change > is occurring within the shared DAL object. Is it not? >
No, the DAL object is not shared. Each request happens in a new thread, and all the objects generated in the app code are specific to that request and thread. The database itself is shared and accessible from multiple requests, but the web2py objects defined in the app code are not. If the writable attribute of a field is set in one request, that does not affect its status in another request. Anthony --