Skip to content

Instantly share code, notes, and snippets.

@gartmeier
Created December 18, 2025 09:10
Show Gist options
  • Select an option

  • Save gartmeier/cc59ecec108d915860128653d335abe8 to your computer and use it in GitHub Desktop.

Select an option

Save gartmeier/cc59ecec108d915860128653d335abe8 to your computer and use it in GitHub Desktop.
# views.py
from django.http import JsonResponse
from django.views.decorators.csrf import csrf_exempt
from django.views.decorators.http import require_POST
import json
from .models import Measurement
from .tasks import process_measurement_batch
@csrf_exempt
@require_POST
def batch_measurements(request):
data = json.loads(request.body)
measurements = data.get('measurements', [])
# Bulk insert
objects = [
Measurement(
vehicle_id=m['vehicle_id'],
timestamp=m['timestamp'],
d1=m['d1'],
speed=m['speed'],
)
for m in measurements
]
created = Measurement.objects.bulk_create(objects)
# Queue for trip processing
process_measurement_batch.delay([obj.id for obj in created])
return JsonResponse({'created': len(created)})
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment