ich hab mal versucht die Speicherung etwas zu abstrahieren. Code findet sich auf http://paste.pocoo.org/show/192572/
Kritik und Vorschläge sind natürlich Willkommen
Neuen Store erstellen:
Code: Alles auswählen
users = jStore("users")
Code: Alles auswählen
for i in [["tim","tim@mail.de"], ["holger","holger@mail.de"], ["daniel","daniel@mail.de"]]:
users.add(i[0], i[1])
Code: Alles auswählen
print users.get("tim")
{'info': {'time_create': 1269273246.5548069, 'time_update': ''}, 'value': 'tim@mail.de', 'id': 1, 'key': 'tim'}
print users.get(["tim", "daniel"])
[{'info': {'time_create': 1269273246.5548069, 'time_update': ''}, 'value': 'tim@mail.de', 'id': 1, 'key': 'tim'}, {'info': {'time_create': 1269273246.5548141, 'time_update': ''}, 'value': 'daniel@mail.de', 'id': 3, 'key': 'daniel'}]
print users.get([1, 3])
[{'info': {'time_create': 1269273246.5548069, 'time_update': ''}, 'value': 'tim@mail.de', 'id': 1, 'key': 'tim'}, {'info': {'time_create': 1269273246.5548141, 'time_update': ''}, 'value': 'daniel@mail.de', 'id': 3, 'key': 'daniel'}]
Code: Alles auswählen
print users.getkeys()
['daniel', 'holger', 'tim']
print users.getkeys(reverse=True)
['tim', 'holger', 'daniel']
print users.getkeys(limit=2)
['daniel', 'holger']
print users.getkeys(like="da")
['daniel']
Code: Alles auswählen
print users.getids()
[1, 2, 3]
print users.getids(reverse=True)
[3, 2, 1]
print users.getids(limit=2, reverse=True)
[3, 2]
Code: Alles auswählen
users = jStore("users")
for i in [["tim","tim@mail.de"], ["holger","holger@mail.de"], ["daniel","daniel@mail.de"]]:
users.add(i[0], i[1])
citys = jStore("posts")
citys.add("Cologne", [users.get("tim")["id"], users.get("daniel")["id"]])
citys.add("Berlin", [users.get("holger")["id"]])
for city in citys.getkeys():
for userid in citys.get(city)["value"]:
print "%s - %s" % (city, users.get(userid)["key"])
citys.rename("Cologne", "Köln")
for city in citys.getkeys():
for userid in citys.get(city)["value"]:
print "%s - %s" % (city, users.get(userid)["key"])
Code: Alles auswählen
Berlin - holger
Cologne - tim
Cologne - daniel
Berlin - holger
Köln - tim
Köln - daniel