After a few minor modifications, I was able to get the Admin app as
well as the appadmin controllers to work on appengine.  Admin is only
accessible to Appengine users that are allowed to contribute to your
project (appengine app administrator), tickets stored in Big Table are
viewable as well as the nice gui to make DB updates.  As a bit of a
security measure in appadmin, I restricted access to my apps users in
a membership group (e.g. I added @auth.requires_membership('agents') )
to all of the functions in appadmin.py).

Sure, there are many actions that won't work (e.g. editing app code,
adding/deleting apps to the web2py stack, etc) but the ability to
administer the DB is well worth it in my opinion.  Especially tickets
since the datastore viewer in appengine truncates the ticket_data
making it impossible to debug issues.

Would it make sense to add a bunch of "if not
request.env.web2py_runtime_gae:" statements throughout the admin and
appadmin controllers and views to hide features that are not available
on appengine?  This would be a nice bit to advertise to the developer
community, "unlike Django, web2py now offers an appengine-friendly
Admin that just works!".

Thoughts?

Reply via email to