Database_sync_to_async не работает в потребителях каналов django
<class NotificationConsumer(AsyncWebsocketConsumer):
async def connect(self):
self.room_name = self.scope['url_route']['kwargs']['username']
self.room_group_name = 'notification_%s' % self.room_name
notificationobjs=await self.get_details(self.room_name)
# unseencount=application_notifications.objects.filter(User=User.objects.get(username=self.room_name),is_seen=False).count()
data={'notifications':NotificationSerializer(notificationobjs,many=True).data,'count':0}
print(self.room_group_name)
await self.channel_layer.group_add(
self.room_group_name,
self.channel_name
)
await self.accept()
await self.send(text_data=json.dumps({'status':'connected','user':self.room_group_name,'payload':data}))
@database_sync_to_async
def get_details(self,room_name):
return application_notifications.objects.filter(User=User.objects.get(username=room_name))
Это мой файл потребителей и я использую AsyncWebSocketConsumer. И функция Get details не работает.
Показывает ошибку "django.core.exceptions.SynchronousOnlyOperation: You cannot call this from an async context - use a thread or sync_to_async."
".Если кто-нибудь может помочь мне решить эту проблему, я буду очень признателен. Спасибо