I'm new to web2py but since I have an iphone I've been interested in the mobile view/standard view capability of web2py so I've been watching this thread.
Could you possibly generalize display devices even more, to even provide per-user or per-session "skinning" of the web page, storing the display mode/ theme/skin value in the session storage. Then controllers and views could adjust according to their own abilities. (to tell the truth, the mobile-enabled websites really tick me off when there is no way for me to force it back to the "standard" page.)