Mercurial > hg > Feedworm
annotate backend/couchdb/ListDateTimeField.py @ 186:6cbd4420c187
when replicating, also compact the database
author | Dirk Olmes <dirk@xanthippe.ping.de> |
---|---|
date | Tue, 13 Sep 2011 17:43:22 +0200 |
parents | f0afcd1c5656 |
children | bb3c851b18b1 |
rev | line source |
---|---|
170
f0afcd1c5656
implement a couchdb mapping field that stores a datetime instance as a JSON array
dirk
parents:
diff
changeset
|
1 |
f0afcd1c5656
implement a couchdb mapping field that stores a datetime instance as a JSON array
dirk
parents:
diff
changeset
|
2 from couchdb.mapping import Field |
f0afcd1c5656
implement a couchdb mapping field that stores a datetime instance as a JSON array
dirk
parents:
diff
changeset
|
3 from datetime import datetime |
f0afcd1c5656
implement a couchdb mapping field that stores a datetime instance as a JSON array
dirk
parents:
diff
changeset
|
4 |
f0afcd1c5656
implement a couchdb mapping field that stores a datetime instance as a JSON array
dirk
parents:
diff
changeset
|
5 class ListDateTimeField(Field): |
f0afcd1c5656
implement a couchdb mapping field that stores a datetime instance as a JSON array
dirk
parents:
diff
changeset
|
6 def _to_python(self, value): |
f0afcd1c5656
implement a couchdb mapping field that stores a datetime instance as a JSON array
dirk
parents:
diff
changeset
|
7 if isinstance(value, list): |
f0afcd1c5656
implement a couchdb mapping field that stores a datetime instance as a JSON array
dirk
parents:
diff
changeset
|
8 return datetime(*value) |
f0afcd1c5656
implement a couchdb mapping field that stores a datetime instance as a JSON array
dirk
parents:
diff
changeset
|
9 return value |
f0afcd1c5656
implement a couchdb mapping field that stores a datetime instance as a JSON array
dirk
parents:
diff
changeset
|
10 |
f0afcd1c5656
implement a couchdb mapping field that stores a datetime instance as a JSON array
dirk
parents:
diff
changeset
|
11 def _to_json(self, value): |
f0afcd1c5656
implement a couchdb mapping field that stores a datetime instance as a JSON array
dirk
parents:
diff
changeset
|
12 if isinstance(value, datetime): |
f0afcd1c5656
implement a couchdb mapping field that stores a datetime instance as a JSON array
dirk
parents:
diff
changeset
|
13 return [ value.year, value.month, value.day, value.hour, value.minute, value.second ] |
f0afcd1c5656
implement a couchdb mapping field that stores a datetime instance as a JSON array
dirk
parents:
diff
changeset
|
14 return value |