update
This commit is contained in:
@ -28,9 +28,9 @@ class Location_polygonSerializer(GeoFeatureModelSerializer):
|
||||
class JPN_main_perfSerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model=JpnAdminMainPerf
|
||||
fields=['adm0_en', 'adm0_ja', 'adm0_pcode', 'adm1_en', 'adm1_ja', 'adm1_pcode']
|
||||
fields=['id', 'adm0_en', 'adm0_ja', 'adm0_pcode', 'adm1_en', 'adm1_ja', 'adm1_pcode']
|
||||
|
||||
class JPN_perfSerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model=JpnAdminPerf
|
||||
fields=['et_id', 'et_right', 'et_left', 'adm2_l', 'adm1_l', 'adm0_l', 'adm0_r', 'adm1_r', 'adm2_r', 'admlevel']
|
||||
fields=['id','et_id', 'et_right', 'et_left', 'adm2_l', 'adm1_l', 'adm0_l', 'adm0_r', 'adm1_r', 'adm2_r', 'admlevel']
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
from rest_framework import urlpatterns
|
||||
from rest_framework.routers import DefaultRouter
|
||||
from .views import LocationViewSet, Location_lineViewSet, Location_polygonViewSet, Jpn_Main_PerfViewSet, Jpn_PerfViewSet
|
||||
from .views import LocationViewSet, Location_lineViewSet, Location_polygonViewSet, Jpn_Main_PerfViewSet, Jpn_PerfViewSet, LocationsInPerf, SubInPerf
|
||||
from django.urls import path, include
|
||||
|
||||
|
||||
@ -14,3 +14,8 @@ router.register(prefix='perf', viewset=Jpn_PerfViewSet, basename='perf')
|
||||
|
||||
|
||||
urlpatterns = router.urls
|
||||
|
||||
urlpatterns += [
|
||||
path('inperf/', LocationsInPerf, name="location_perf"),
|
||||
path('insubperf/', SubInPerf, name="sub_perf"),
|
||||
]
|
||||
17
rog/views.py
17
rog/views.py
@ -8,6 +8,7 @@ from rest_framework.response import Response
|
||||
from rest_framework.parsers import JSONParser, MultiPartParser
|
||||
from .models import Location
|
||||
from .serializers import LocationSerializer
|
||||
from django.http import JsonResponse
|
||||
|
||||
|
||||
|
||||
@ -37,4 +38,18 @@ class Jpn_PerfViewSet(viewsets.ModelViewSet):
|
||||
serializer_class=JPN_perfSerializer
|
||||
|
||||
|
||||
|
||||
def LocationsInPerf(request):
|
||||
perfecture = request.GET.get('perf')
|
||||
perf_geom = JpnAdminMainPerf.objects.get(id=perfecture)
|
||||
locs = Location.objects.filter(geom__within=perf_geom.geom)
|
||||
serializer = LocationSerializer(locs, many=True)
|
||||
return JsonResponse(serializer.data, safe=False)
|
||||
#return JsonResponse({})
|
||||
|
||||
def SubInPerf(request):
|
||||
prefecture = request.GET.get('perf')
|
||||
perf_geom = JpnAdminMainPerf.objects.get(id=prefecture)
|
||||
sub = JpnAdminPerf.objects.filter(geom__within=perf_geom.geom)
|
||||
serializer = JPN_perfSerializer(sub, many=True)
|
||||
return JsonResponse(serializer.data, safe=False)
|
||||
|
||||
Reference in New Issue
Block a user