Me gustaría que hubiera una casilla de verificación que haría que el almacén de datos de sólo lectura. Este truco parece hacer lo que necesito. Ponga la siguiente en el controlador principal:
from google.appengine.runtime.apiproxy_errors import CapabilityDisabledError
from google.appengine.api import apiproxy_stub_map
def make_datastore_readonly():
"""Throw ReadOnlyError on put and delete operations."""
def hook(service, call, request, response):
assert(service == 'datastore_v3')
if call in ('Put', 'Delete'):
raise CapabilityDisabledError('Datastore is in read-only mode')
apiproxy_stub_map.apiproxy.GetPreCallHooks().Push('readonly_datastore', hook, 'datastore_v3')
def main():
make_datastore_readonly()
Se encontró aquí: http://groups.google.com/group/google-appengine/msg/51db9d51401715ca
1: pregunta interesante! ¿Tal vez presentar un "problema" con el rastreador de problemas GAE? – jldupont
Una observación muy astuta. Tal vez Nick Johnson se dará cuenta de esto y ayudará a conseguir esto de manera rápida? ¿Por favor? –
Existe el problema GAE # 1811: Permitir a los administradores de usuarios deshabilitar las capacidades para las pruebas, lo cual es más o menos lo mismo y no parece que haya una solución todavía. Con suerte, Google hará de esto una prioridad. –