📁 core/models.py (DeviceUsage অংশ)
class DeviceUsage(models.Model):
device_id = models.CharField(max_length=80, unique=True)
usage_count = models.IntegerField(default=0)
def __str__(self):
return f"{self.device_id} - {self.usage_count}"
📁 core/serializers.py
from rest_framework import serializers
from .models import DeviceUsage
class DeviceUsageSerializer(serializers.ModelSerializer):
class Meta:
model = DeviceUsage
fields = '__all__'
📁 core/views.py
from rest_framework import generics
from .models import DeviceUsage
from .serializers import DeviceUsageSerializer
# ✅ GET (list) & POST (create)
class DeviceUsageListCreateView(generics.ListCreateAPIView):
queryset = DeviceUsage.objects.all()
serializer_class = DeviceUsageSerializer
# ✅ PUT/PATCH/DELETE/GET single
class DeviceUsageDetailView(generics.RetrieveUpdateDestroyAPIView):
queryset = DeviceUsage.objects.all()
serializer_class = DeviceUsageSerializer
lookup_field = 'id'
📁 core/urls.py
from django.urls import path
from .views import DeviceUsageListCreateView, DeviceUsageDetailView
urlpatterns += [
path('device-usage/', DeviceUsageListCreateView.as_view()), # List & Create
path('device-usage/<int:id>/', DeviceUsageDetailView.as_view()), # Retrieve, Update, Delete
]
✅ API Summary:
| Method | Endpoint | Description |
|---|---|---|
GET | /device-usage/ | সব ডিভাইস ইউজেজ লিস্ট |
POST | /device-usage/ | নতুন ডিভাইস ইউজেজ এন্ট্রি |
GET | /device-usage/<id>/ | নির্দিষ্ট ইউজেজ ডেটা |
PUT | /device-usage/<id>/ | সম্পূর্ণ আপডেট |
PATCH | /device-usage/<id>/ | جزئي আপডেট |
DELETE | /device-usage/<id>/ | রিমুভ করা |