Ich habe eine Frage meine db Modell wie folgt aussieht:Google App Engine + relationale Datenbank - erhalten ID
class UserAnswer (db.Model):
user = db.UserProperty()
name = db.StringProperty()
email = db.StringProperty()
occupation = db.IntegerProperty()
howreach = db.IntegerProperty()
rating = db.IntegerProperty()
comment = db.StringProperty(multiline=True)
class Involves(db.Model):
shortName = db.StringProperty()
fullName = db.StringProperty()
class UserInvolves(db.Model):
userAnswer = db.ReferenceProperty(UserAnswer)
involve = db.ReferenceProperty(Involves)
Wie kann ich einen wählen etwas tun:
def getInvolves(user):
results = db.GqlQuery("Select * from UserInvolves as ui where ui.userAnswer.ID='"+user.ID+"'")
meine ich, wie ich kann diesen ID-Schlüssel erhalten? Wie wenn ich versuche, wie oben ich einen Fehler recive:
Traceback (most recent call last):
File "C:\Program Files\Google\google_appengine\google\appengine\ext\webapp\__init__.py", line 517, in __call__
handler.post(*groups)
File "C:\Program Files\Google\google_appengine\demos\b00213576\main.py", line 217, in post
involves = getInvolves(answer)
File "C:\Program Files\Google\google_appengine\demos\b00213576\main.py", line 128, in getInvolves
results = db.GqlQuery("Select * from UserInvolves as ui where ui.userAnswer.ID='"+user.ID+"'")
AttributeError: 'UserAnswer' object has no attribute 'ID'
Und ich weiß nicht, wie zu GAE konvertieren:/
Sie können nicht tun, schließt sich in App Engine. Sie müssen Denormalisierung durchführen, um diese Art von Abfrage durchzuführen. – geoffspear
ok, aber was bedeutet es? Kannst du mir Beispiel geben ?? – canimbenim