>
> {{response.files.append(URL(r=request,c='static',f='/js/d3.js'))}}
>
{{extend 'layout.html'}}
>
That way, the script is only added for the current action (the function
requested by the client), saving client resources
Another way would be adding them conditionally per-controller/function
(model code)
if request.controller in ("d3", "plot"):
response.files.append(...)
(controller code)
if not request.function in ["about", "index", "contact"]:
response.files.append(...)
There is detailed information on static files and the layout in the book
http://www.web2py.com/books/default/chapter/29/05#Page-layout
--