diff options
Diffstat (limited to 'archaeological_warehouse')
-rw-r--r-- | archaeological_warehouse/urls.py | 24 | ||||
-rw-r--r-- | archaeological_warehouse/views_api.py | 23 |
2 files changed, 45 insertions, 2 deletions
diff --git a/archaeological_warehouse/urls.py b/archaeological_warehouse/urls.py index e737125b7..870008de4 100644 --- a/archaeological_warehouse/urls.py +++ b/archaeological_warehouse/urls.py @@ -18,11 +18,11 @@ # See the file COPYING for details. from django.conf.urls import url +from django.urls import path from ishtar_common.utils import check_rights -from archaeological_warehouse import views -from archaeological_warehouse import models +from archaeological_warehouse import models, views, views_api # be careful: each check_rights must be relevant with ishtar_menu @@ -241,4 +241,24 @@ urlpatterns = [ views.GenerateStatsWarehouse.as_view(), name="generate-stats-warehouse", ), + url( + r"api/facets/warehouse/$", views_api.FacetWarehouseAPIView.as_view(), + name="api-facets-warehouse" + ), + url( + r"api/search/warehouse/$", views_api.SearchWarehouseAPI.as_view(), + name="api-search-warehouse" + ), + path( + "api/get/warehouse/<int:pk>/", views_api.GetWarehouseAPI.as_view(), + name="api-get-warehouse" + ), + url( + r"api/search/container/$", views_api.SearchContainerAPI.as_view(), + name="api-search-container" + ), + path( + "api/get/container/<int:pk>/", views_api.GetContainerAPI.as_view(), + name="api-get-container" + ), ] diff --git a/archaeological_warehouse/views_api.py b/archaeological_warehouse/views_api.py new file mode 100644 index 000000000..468fe08c2 --- /dev/null +++ b/archaeological_warehouse/views_api.py @@ -0,0 +1,23 @@ +from ishtar_common.rest import SearchAPIView, FacetAPIView, GetAPIView +from archaeological_warehouse import models, forms + + +class FacetWarehouseAPIView(FacetAPIView): + models = [models.Warehouse, models.Container] + select_forms = [forms.WarehouseSelect, forms.ContainerSelect] + + +class SearchWarehouseAPI(SearchAPIView): + model = models.Warehouse + + +class SearchContainerAPI(SearchAPIView): + model = models.Container + + +class GetWarehouseAPI(GetAPIView): + model = models.Warehouse + + +class GetContainerAPI(GetAPIView): + model = models.Container |