rename Point to POI

This commit is contained in:
Laura Klünder 2017-07-08 16:29:12 +02:00
parent fb65549974
commit f2913dd8ac
8 changed files with 59 additions and 16 deletions

View file

@ -9,8 +9,8 @@ from rest_framework.routers import SimpleRouter
from c3nav.editor.api import ChangeSetViewSet, EditorViewSet from c3nav.editor.api import ChangeSetViewSet, EditorViewSet
from c3nav.mapdata.api import (AreaViewSet, BuildingViewSet, ColumnViewSet, DoorViewSet, HoleViewSet, LevelViewSet, from c3nav.mapdata.api import (AreaViewSet, BuildingViewSet, ColumnViewSet, DoorViewSet, HoleViewSet, LevelViewSet,
LineObstacleViewSet, LocationGroupViewSet, LocationViewSet, ObstacleViewSet, LineObstacleViewSet, LocationGroupViewSet, LocationViewSet, ObstacleViewSet, POIViewSet,
PointViewSet, SourceViewSet, SpaceViewSet, StairViewSet) SourceViewSet, SpaceViewSet, StairViewSet)
router = SimpleRouter() router = SimpleRouter()
router.register(r'levels', LevelViewSet) router.register(r'levels', LevelViewSet)
@ -23,7 +23,7 @@ router.register(r'stairs', StairViewSet)
router.register(r'obstacles', ObstacleViewSet) router.register(r'obstacles', ObstacleViewSet)
router.register(r'lineobstacles', LineObstacleViewSet) router.register(r'lineobstacles', LineObstacleViewSet)
router.register(r'columns', ColumnViewSet) router.register(r'columns', ColumnViewSet)
router.register(r'points', PointViewSet) router.register(r'pois', POIViewSet)
router.register(r'sources', SourceViewSet) router.register(r'sources', SourceViewSet)
router.register(r'locations', LocationViewSet) router.register(r'locations', LocationViewSet)

View file

@ -130,7 +130,7 @@ class EditorViewSet(ViewSet):
space.obstacles.all(), space.obstacles.all(),
space.lineobstacles.all(), space.lineobstacles.all(),
space.columns.all(), space.columns.all(),
space.points.all().prefetch_related('groups'), space.pois.all().prefetch_related('groups'),
other_spaces, other_spaces,
) )
return Response(sum([self._get_geojsons(obj) for obj in results], ())) return Response(sum([self._get_geojsons(obj) for obj in results], ()))
@ -154,7 +154,7 @@ class EditorViewSet(ViewSet):
'obstacle': '#999999', 'obstacle': '#999999',
'lineobstacle': '#999999', 'lineobstacle': '#999999',
'column': '#888888', 'column': '#888888',
'point': '#4488cc', 'poi': '#4488cc',
'shadow': '#000000', 'shadow': '#000000',
}) })

View file

@ -55,4 +55,4 @@ urlpatterns.extend(add_editor_urls('Stair', 'Space'))
urlpatterns.extend(add_editor_urls('Obstacle', 'Space')) urlpatterns.extend(add_editor_urls('Obstacle', 'Space'))
urlpatterns.extend(add_editor_urls('LineObstacle', 'Space')) urlpatterns.extend(add_editor_urls('LineObstacle', 'Space'))
urlpatterns.extend(add_editor_urls('Column', 'Space')) urlpatterns.extend(add_editor_urls('Column', 'Space'))
urlpatterns.extend(add_editor_urls('Point', 'Space')) urlpatterns.extend(add_editor_urls('POI', 'Space'))

View file

@ -61,7 +61,7 @@ def space_detail(request, level, pk):
'can_edit': request.changeset.can_edit(request), 'can_edit': request.changeset.can_edit(request),
'child_models': [child_model(request.changeset.wrap_model(model_name), kwargs={'space': pk}, parent=space) 'child_models': [child_model(request.changeset.wrap_model(model_name), kwargs={'space': pk}, parent=space)
for model_name in ('Hole', 'Area', 'Stair', 'Obstacle', 'LineObstacle', 'Column', 'Point')], for model_name in ('Hole', 'Area', 'Stair', 'Obstacle', 'LineObstacle', 'Column', 'POI')],
'geometry_url': '/api/editor/geometries/?space='+pk, 'geometry_url': '/api/editor/geometries/?space='+pk,
}) })

View file

@ -14,7 +14,7 @@ from rest_framework.viewsets import GenericViewSet, ReadOnlyModelViewSet
from c3nav.mapdata.models import Building, Door, Hole, LocationGroup, Source, Space from c3nav.mapdata.models import Building, Door, Hole, LocationGroup, Source, Space
from c3nav.mapdata.models.geometry.level import LevelGeometryMixin from c3nav.mapdata.models.geometry.level import LevelGeometryMixin
from c3nav.mapdata.models.geometry.space import Area, Column, LineObstacle, Obstacle, Point, SpaceGeometryMixin, Stair from c3nav.mapdata.models.geometry.space import POI, Area, Column, LineObstacle, Obstacle, SpaceGeometryMixin, Stair
from c3nav.mapdata.models.level import Level from c3nav.mapdata.models.level import Level
from c3nav.mapdata.models.locations import Location, LocationRedirect, LocationSlug, SpecificLocation from c3nav.mapdata.models.locations import Location, LocationRedirect, LocationSlug, SpecificLocation
from c3nav.mapdata.utils.models import get_submodels from c3nav.mapdata.utils.models import get_submodels
@ -133,9 +133,9 @@ class ColumnViewSet(MapdataViewSet):
queryset = Column.objects.all() queryset = Column.objects.all()
class PointViewSet(MapdataViewSet): class POIViewSet(MapdataViewSet):
""" Add ?geometry=1 to get geometries, add ?space=<id> to filter by space. """ """ Add ?geometry=1 to get geometries, add ?space=<id> to filter by space. """
queryset = Point.objects.all() queryset = POI.objects.all()
class LocationGroupViewSet(MapdataViewSet): class LocationGroupViewSet(MapdataViewSet):

View file

@ -0,0 +1,43 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.11.2 on 2017-07-08 14:23
from __future__ import unicode_literals
from django.db import migrations, models
import django.db.models.deletion
class Migration(migrations.Migration):
dependencies = [
('mapdata', '0016_remove_source_image'),
]
operations = [
migrations.RenameModel(
old_name='Point',
new_name='POI',
),
migrations.AlterModelOptions(
name='poi',
options={'verbose_name': 'Point of Interest', 'verbose_name_plural': 'Points of Interest'},
),
migrations.AlterField(
model_name='poi',
name='groups',
field=models.ManyToManyField(blank=True, related_name='pois', to='mapdata.LocationGroup',
verbose_name='Location Groups'),
),
migrations.AlterField(
model_name='poi',
name='locationslug_ptr',
field=models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True,
primary_key=True, related_name='pois', serialize=False,
to='mapdata.LocationSlug'),
),
migrations.AlterField(
model_name='poi',
name='space',
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='pois',
to='mapdata.Space', verbose_name='space'),
),
]

View file

@ -150,16 +150,16 @@ class LineObstacle(SpaceGeometryMixin, models.Model):
return result return result
class Point(SpecificLocation, SpaceGeometryMixin, models.Model): class POI(SpecificLocation, SpaceGeometryMixin, models.Model):
""" """
An point in a space. An point of interest
""" """
geometry = GeometryField('point') geometry = GeometryField('point')
class Meta: class Meta:
verbose_name = _('Point') verbose_name = _('Point of Interest')
verbose_name_plural = _('Points') verbose_name_plural = _('Points of Interest')
default_related_name = 'points' default_related_name = 'pois'
@property @property
def buffered_geometry(self): def buffered_geometry(self):

View file

@ -24,7 +24,7 @@ class LocationSlug(SerializableMixin, models.Model):
'Level': 'l', 'Level': 'l',
'Space': 's', 'Space': 's',
'Area': 'a', 'Area': 'a',
'Point': 'p', 'POI': 'p',
'LocationGroup': 'g' 'LocationGroup': 'g'
} }
LOCATION_TYPE_BY_CODE = {code: model_name for model_name, code in LOCATION_TYPE_CODES.items()} LOCATION_TYPE_BY_CODE = {code: model_name for model_name, code in LOCATION_TYPE_CODES.items()}