diff options
author | Étienne Loks <etienne.loks@peacefrogs.net> | 2012-03-18 17:45:26 +0100 |
---|---|---|
committer | Étienne Loks <etienne.loks@peacefrogs.net> | 2012-03-18 17:45:26 +0100 |
commit | a46efae7bf7a9a0f8a2ccaffdfe0d18ffcb2a0d2 (patch) | |
tree | 1321baae4984cd6d1cd236f5d6d418552ffd26c8 /chimere/utils.py | |
parent | e424f21a8c03ad4a09b37b7a626493cbc7bb4459 (diff) | |
download | Chimère-a46efae7bf7a9a0f8a2ccaffdfe0d18ffcb2a0d2.tar.bz2 Chimère-a46efae7bf7a9a0f8a2ccaffdfe0d18ffcb2a0d2.zip |
Manage versions on OSM import
Diffstat (limited to 'chimere/utils.py')
-rw-r--r-- | chimere/utils.py | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/chimere/utils.py b/chimere/utils.py index e243c34..62d3786 100644 --- a/chimere/utils.py +++ b/chimere/utils.py @@ -149,6 +149,7 @@ class OSMManager(ImportManager): for node in tree.xpath('//node'): name, point, linestring = None, None, None node_id = node.attrib.get('id') + version = node.attrib.get('version') for item in node: k = item.attrib.get('k') if k == 'name': @@ -157,7 +158,8 @@ class OSMManager(ImportManager): node.get('lat')) if point: dct = {'point':point, - 'name':name,} + 'name':name, + 'import_version':version} m = None if node_id: dct_import = { @@ -165,6 +167,9 @@ class OSMManager(ImportManager): 'import_source':self.importer_instance.source_url} try: m = Marker.objects.get(**dct_import) + if version and m.import_version == int(version): + # no update since the last import + continue for k in dct: setattr(m, k, dct[k]) m.save() |