from channels.generic.websocket import AsyncWebsocketConsumer from apps.product.models import SaleUnit from asgiref.sync import sync_to_async import json @sync_to_async def get_unit(unit_id=None): unit = SaleUnit.objects.get(id=int(unit_id)) return unit class MyConsumer(AsyncWebsocketConsumer): async def connect(self): await self.accept() await self.send(text_data=json.dumps({"message": "Connected!"})) async def disconnect(self, close_code): print("WebSocket disconnected!") async def receive(self, text_data): data = json.loads(text_data) message = data.get("message") unit = await get_unit(int(message)) print("Received:", message) # پاسخ به کلاینت await self.send(text_data=json.dumps({ "message": unit }))