Я использую AppEngine 1.8 с питоном 2,7Как вызвать функцию внутри GAE db.Model класса
У меня есть следующий тип объекта:
class Person(db.Model):
name = db.StringProperty()
email = db.EmailProperty()
и фотографии данного лица:
class Photo(db.Model):
image = db.BlobProperty()
type = db.StringProperty()
caption = db.TextProperty()
person = db.ReferenceProperty(Person)
Я хотел бы иметь функцию внутри класса Person, который непосредственно обращается к фотографии человека, как так:
class Person(db.Model):
name = db.StringProperty()
email = db.EmailProperty()
@property
def photos(self):
photos = Photo.all().filter("person =", self._key)
Однако это не работает. Должен ли я использовать self._key или есть ли другой способ доступа к ключу для охватывающего объекта?
Спасибо.
Вы должны использовать @classmethod – voscausa
@voscausa нонсенс, это не имеет ничего общего с этим. Кваме, что вы подразумеваете под словом «не работает»? Что происходит? Покажите, как именно вы это называете, а также любые ошибки. –
Я называю это из представления django следующим образом: {{person.photos}}, и я не получаю никаких результатов, даже если есть значения. logging.debug (person.photos()) также не работает – Kwame