誰か助けてくれませんか?「住所」フィールドにあるものを単純に取得しようとしています。空のブレース「[]」以外のものを印刷することはできません
レコードの例を次に示します。
{
"_id": { "$oid" : "51376F833EF9EB361F354ED0" },
"addresses": [
{
"city": "CAMBRIDGE",
"suffix": "",
"street_name": "FRANKLIN ST",
"prefix": "",
"zipcode": "49503",
"state": "MA",
"street_num": "127"
}
],
"created_at":{ "$date": 1361160419000.000000 }
}
ここに私のクラスコードがあります:
class Buildings(db.Document):
_id = db.ObjectIdField(required=True)
addresses = db.ListField(db.EmbeddedDocumentField('Address'))
created_at = db.DateTimeField(default=datetime.datetime.now, required=False)
meta = {
'allow_inheritance': False,
'indexes': ['_id'],
'ordering': ['-created_at']
}
class Address(db.EmbeddedDocument):
city = db.StringField(required=False)
suffix = db.StringField(required=False)
street_name = db.StringField(required=False)
zipcode = db.StringField(required=False)
prefix = db.StringField(required=False)
state = db.StringField(required=False)
is_contracted = db.IntField(required=False)
street_num = db.StringField(required=False)
そして、埋め込まれたドキュメントを印刷する必要があるが、各オブジェクトに対して [] のみを返すループ。
for building in Buildings.objects:
print building.addresses
なぜこれがうまくいかないのですか?