Copié el proyecto Django de muestra de Google Cloud para Google Appengine. Luego, modifiqué settings.py para almacenar todos los archivos estáticos en el almacenamiento de Google. Agregué esta configuración
DEFAULT_FILE_STORAGE = 'storages.backends.gs.GSBotoStorage' GS_ACCESS_KEY_ID = 'YourID' GS_SECRET_ACCESS_KEY = 'YourKEY' GS_BUCKET_NAME = 'YourBucket' STATICFILES_STORAGE = 'storages.backends.gs.GSBotoStorage'
En la máquina local, todo funciona perfectamente, pero cuando lo implemento en Google Appengine, aparece un problema de archivo estático. Django no puede encontrar archivos estáticos en un depósito especial de almacenamiento de Google. Este es el mensaje de error:
ImportError en /admin/login/ no se puede importar el nombre SpooledTemporaryFile
en el archivo app.yaml, configuraciones sobre archivos estáticos:
handlers: - url: /static static_dir: static/ - url: .* script: mysite.wsgi.application
Soy nuevo en Google Cloud y no puedo entender dónde estoy haciendo mal.
Editar: Creo que debo modificar el archivo app.yaml para decir appengine "Oye, usa otro depósito, no sirvas el archivo estático tú mismo".
Hay una salida de error más detallada:
ImportError en /admin/ no puede importar el nombre SpooledTemporaryFile Método de solicitud: GET URL de solicitud: https://sbminteractive.appspot.com/admin/ Versión de Django: 1.8 Tipo de excepción: ImportError Valor de excepción: no puede importar el nombre SpooledTemporaryFile Ubicación de la excepción: /base/data /home/apps/e~sbminteractive/20170414t175601.400554512166425273/lib/storages/backends/s3boto.py en, línea 6 Ejecutable de Python: /base/data/home/runtimes/python27/python27_dist/python Versión de Python: 2.7.5 Python Ruta: ['/base/data/home/apps/e~sbminteractive/20170414t175601.400554512166425273', '/base/data/home/apps/e~sbminteractive/20170414t175601.400554512166425273/lib', '/base/data/home /runtimes/python27/python27_dist/lib/python27.zip', '/base/data/home/runtimes/python27/python27_dist/lib/python2.7', '/base/data/home/runtimes/python27/python27_dist/lib /python2.7/plat-linux2', '/base/data/home/runtimes/python27/python27_dist/lib/python2.7/lib-tk', '/base/data/home/runtimes/python27/python27_dist/lib /python2.7/lib-antiguo', '/base/data/home/runtimes/python27/python27_dist/lib/python2.7/lib-dynload', '/base/data/home/runtimes/python27/python27_dist/lib/python2.7/site-packages', '/base/data/home/runtimes/python27/python27_lib/versions/1', '/base/data/home/runtimes/python27/python27_lib/versions/third_party/MySQLdb-1.2.5', '/base/data/ home/runtimes/python27/python27_lib/versions/third_party/protorpc-1.0', '/base/data/home/runtimes/python27/python27_lib/versions/third_party/webapp2-2.3', '/base/data/home/runtimes/ python27/python27_lib/versions/third_party/webob-1.1.1', '/base/data/home/runtimes/python27/python27_lib/versions/third_party/yaml-3.10'] Hora del servidor: viernes, 14 de abril de 2017 14:57: 51 +0000