1

я получаю сообщение об ошибке:Индексирование не поддерживается?

TypeError: 'City' object does not support indexing

, когда это моя модель:

class City(db.Model): 
    region = db.ReferenceProperty() 
    name = db.StringProperty() 
    image = db.BlobProperty() 
    vieworder = db.IntegerProperty() 
    areacode = db.IntegerProperty() 

и это мой запрос

items = Item.all().filter('modified >', timeline).filter('published =',     True).order('-modified').filter('cities =',city[0].key()).fetch(PAGESIZE + 1)` 

Можете ли вы сказать, что я, как я должен сделать мой запрос или модель определения моего класса? Я использую listproperty(db.Key) для моделирования отношений со ссылками, и я думал, что могу фильтровать, как и указанный выше запрос, поскольку он работал для одного элемента. Что мне делать?

ответ

3
city[0].key() 

является причиной вашей ошибки. Скорее всего, вы думаете, что city был списком, но на самом деле это один элемент, или некоторые из них.