Actualización: Me he dado cuenta de que las entidades se guardan (y están disponibles en el Visor de Datastore) cuando las guardo usando vistas (y la función create_object). Pero cuando uso shell (manage.py shell) para crear y guardar nueva entidad, no está comprometido con el almacenamiento (pero aún se puede ver en Tes.objects.all()).Guardando entidades en django-nonrel con google appengine
empecé a jugar con el django-nonrel con google appengine y yo estoy recibiendo frustrado por algo tan simple como el ahorro de Entidades.
He configurado mi entorno como se describe en instruction. Logré ejecutar la aplicación de muestra y funciona bien. Me gustaría extenderlo para que guarde mi entidad en el almacenamiento. Para ello:
añadí nuevo módulo django con models.py:
from django.db import models class Tes(models.Model): name = models.CharField(max_length=150)
he creado un script para salvar algunos datos:
import os import sys sys.path.append("d:\\workspace\\project\\") os.environ['DJANGO_SETTINGS_MODULE'] = 'settings' from testmodule.models import Tes t = Tes(name="test") t.save() tes = Tes.objects.all() for t in tes: print t.name
El guión funciona sin errores. Cuando lo ejecuto varias veces, una tras otra, imprime cada vez más cadenas de "prueba". Pero cuando intento ejecutarlo después de un minuto de descanso, el Tes.objects.all() no devuelve nada. Durante ese tiempo, el archivo del almacén de datos cambia su tamaño (pero tal vez sea solo algún tipo de registro). Cuando miro el http://localhost:8000/_ah/admin/datastore, puedo seleccionar solo AhAdminXrsfToken en el campo de selección.
De todos modos, ¿qué me estoy perdiendo? ¿Dónde puedo encontrar algún tipo de registros que me digan qué pasa?
Esto realmente no responde la pregunta. –
"¿Qué me estoy perdiendo?" se me preguntó y mi respuesta es la diferencia entre guardar y crear. Lo que estoy tratando de decir es que puede ser la diferencia entre guardar y crear usando save() y put() y que hay buenas alternativas para django completo. –