2013-11-15 69 views
0

Azure python API雖然簡單且很棒,但缺少一些文檔。python azure存儲實體對象

IM使用的TableService得到一個實體,因此

entity = self._tableService.get_entity(tableName, partitionKey, rowKey) 

什麼是返回的實體?

下面向上吹

for key in entity.keys(): 

此外,這是上述實體的陣列

entities = self._tableService.query_entities(tableName, query) 
+0

使用'type(entity)'或'dir(entity)'來檢查它。 – aIKid

+0

是啊,在dir(實體) –

回答

1

get_entity將返回azure.storage.Entity的實例與領域如PartitionKey,RowKey和所有當您將其添加到表格中時設置的其他字段。

query_entities將返回azure.storage.Entity

列表

您可以添加到表2不同的方式,使用字典:

task = {'PartitionKey': 'tasksSeattle', 'RowKey': '1', 'description' : 'Take out the trash', 'priority' : 200} 
table_service.insert_entity('tasktable', task) 

或azure.storage.Entity實例

task = Entity() 
task.PartitionKey = 'tasksSeattle' 
task.RowKey = '2' 
task.description = 'Wash the car' 
task.priority = 100 
table_service.insert_entity('tasktable', task) 

然後get_entity這樣的:

task = table_service.get_entity('tasktable', 'tasksSeattle', '1') 
print(task.PartitionKey) 
print(task.RowKey) 
print(task.description) 
print(task.priority) 

然後query_entities這樣的:

tasks = table_service.query_entities('tasktable', "PartitionKey eq 'tasksSeattle'") 
for task in tasks: 
    print(task.PartitionKey) 
    print(task.RowKey) 
    print(task.description) 
    print(task.priority) 

有一個如何引導描述的基本知識: http://www.windowsazure.com/en-us/develop/python/how-to-guides/table-service/

而對於更高級的用法,我建議看單元測試: https://github.com/WindowsAzure/azure-sdk-for-python/blob/master/tests/test_tableservice.py

+0

上做了一個iter,如果一個人先驗地知道這些密鑰,這就很有幫助。測試也使用已知的密鑰。我最終做了一個迭代,作爲dir(anObject)中的attr對象: –