> > Aw crap. And I thought I had tried that. > > setting ajax=True does indeed work... I'm guessing that it's because it > creates a separate request whereas load without ajax uses the current value > of request.controller to decide which models to execute. >
You're on the right track, but that's not quite the problem. LOAD without Ajax does use the proper controller -- the problem is that it does not re-execute the models. Instead, it simply executes the LOAD controller using the current model environment (with modified request and response objects) -- see http://code.google.com/p/web2py/source/browse/gluon/compileapp.py#203. We've talked about having non-Ajax components re-execute the models (which would obviously be necessary to handle conditional models properly), but I think Massimo is not too happy with non-Ajax components anyway (it gets pretty complicated figuring out all the subtleties to implement them properly), so the recommendation is to just use Ajax components. Anthony

