chore: Use datalayers' UUIDs in the views
This commit is contained in:
parent
6b7efda37a
commit
c46f59e3dd
2 changed files with 10 additions and 7 deletions
|
@ -374,7 +374,7 @@ class DataLayer(NamedModel):
|
||||||
(EDITORS, _("Editors only")),
|
(EDITORS, _("Editors only")),
|
||||||
(OWNER, _("Owner only")),
|
(OWNER, _("Owner only")),
|
||||||
)
|
)
|
||||||
uuid = models.UUIDField(unique=True, default=uuid.uuid4, editable=False)
|
uuid = models.UUIDField(unique=True, primary_key=True, default=uuid.uuid4, editable=False)
|
||||||
map = models.ForeignKey(Map, on_delete=models.CASCADE)
|
map = models.ForeignKey(Map, on_delete=models.CASCADE)
|
||||||
description = models.TextField(blank=True, null=True, verbose_name=_("description"))
|
description = models.TextField(blank=True, null=True, verbose_name=_("description"))
|
||||||
geojson = models.FileField(upload_to=upload_to, blank=True, null=True)
|
geojson = models.FileField(upload_to=upload_to, blank=True, null=True)
|
||||||
|
@ -437,6 +437,7 @@ class DataLayer(NamedModel):
|
||||||
|
|
||||||
def clone(self, map_inst=None):
|
def clone(self, map_inst=None):
|
||||||
new = self.__class__.objects.get(pk=self.pk)
|
new = self.__class__.objects.get(pk=self.pk)
|
||||||
|
new._state.adding = True
|
||||||
new.pk = None
|
new.pk = None
|
||||||
if map_inst:
|
if map_inst:
|
||||||
new.map = map_inst
|
new.map = map_inst
|
||||||
|
|
14
umap/urls.py
14
umap/urls.py
|
@ -21,6 +21,8 @@ from .utils import decorated_patterns
|
||||||
|
|
||||||
admin.autodiscover()
|
admin.autodiscover()
|
||||||
|
|
||||||
|
uuid = r"[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}"
|
||||||
|
|
||||||
urlpatterns = [
|
urlpatterns = [
|
||||||
re_path(r"^admin/", admin.site.urls),
|
re_path(r"^admin/", admin.site.urls),
|
||||||
re_path("", include("social_django.urls", namespace="social")),
|
re_path("", include("social_django.urls", namespace="social")),
|
||||||
|
@ -73,17 +75,17 @@ i18n_urls = [
|
||||||
i18n_urls += decorated_patterns(
|
i18n_urls += decorated_patterns(
|
||||||
[can_view_map, cache_control(must_revalidate=True)],
|
[can_view_map, cache_control(must_revalidate=True)],
|
||||||
re_path(
|
re_path(
|
||||||
r"^datalayer/(?P<map_id>\d+)/(?P<pk>[\d]+)/$",
|
r"^datalayer/(?P<map_id>\d+)/(?P<pk>" + uuid + ")/$",
|
||||||
views.DataLayerView.as_view(),
|
views.DataLayerView.as_view(),
|
||||||
name="datalayer_view",
|
name="datalayer_view",
|
||||||
),
|
),
|
||||||
re_path(
|
re_path(
|
||||||
r"^datalayer/(?P<map_id>\d+)/(?P<pk>[\d]+)/versions/$",
|
r"^datalayer/(?P<map_id>\d+)/(?P<pk>" + uuid + r")/versions/$",
|
||||||
views.DataLayerVersions.as_view(),
|
views.DataLayerVersions.as_view(),
|
||||||
name="datalayer_versions",
|
name="datalayer_versions",
|
||||||
),
|
),
|
||||||
re_path(
|
re_path(
|
||||||
r"^datalayer/(?P<map_id>\d+)/(?P<pk>[\d]+)/(?P<name>[_\w]+.geojson)$",
|
r"^datalayer/(?P<map_id>\d+)/(?P<pk>" + uuid + r" )/(?P<name>[_\w]+.geojson)$",
|
||||||
views.DataLayerVersion.as_view(),
|
views.DataLayerVersion.as_view(),
|
||||||
name="datalayer_version",
|
name="datalayer_version",
|
||||||
),
|
),
|
||||||
|
@ -146,12 +148,12 @@ map_urls = [
|
||||||
name="datalayer_create",
|
name="datalayer_create",
|
||||||
),
|
),
|
||||||
re_path(
|
re_path(
|
||||||
r"^map/(?P<map_id>[\d]+)/datalayer/delete/(?P<pk>\d+)/$",
|
r"^map/(?P<map_id>[\d]+)/datalayer/delete/(?P<pk>" + uuid + r")/$",
|
||||||
views.DataLayerDelete.as_view(),
|
views.DataLayerDelete.as_view(),
|
||||||
name="datalayer_delete",
|
name="datalayer_delete",
|
||||||
),
|
),
|
||||||
re_path(
|
re_path(
|
||||||
r"^map/(?P<map_id>[\d]+)/datalayer/permissions/(?P<pk>\d+)/$",
|
r"^map/(?P<map_id>[\d]+)/datalayer/permissions/(?P<pk>" + uuid + r"\d+)/$",
|
||||||
views.UpdateDataLayerPermissions.as_view(),
|
views.UpdateDataLayerPermissions.as_view(),
|
||||||
name="datalayer_permissions",
|
name="datalayer_permissions",
|
||||||
),
|
),
|
||||||
|
@ -166,7 +168,7 @@ if settings.DEFAULT_FROM_EMAIL:
|
||||||
)
|
)
|
||||||
datalayer_urls = [
|
datalayer_urls = [
|
||||||
re_path(
|
re_path(
|
||||||
r"^map/(?P<map_id>[\d]+)/datalayer/update/(?P<pk>\d+)/$",
|
r"^map/(?P<map_id>[\d]+)/datalayer/update/(?P<pk>" + uuid + r")/$",
|
||||||
views.DataLayerUpdate.as_view(),
|
views.DataLayerUpdate.as_view(),
|
||||||
name="datalayer_update",
|
name="datalayer_update",
|
||||||
),
|
),
|
||||||
|
|
Loading…
Reference in a new issue