亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在django頻道休息框架中訂閱模型的所有實例?

如何在django頻道休息框架中訂閱模型的所有實例?

慕森王 2023-08-08 16:17:12
我想將 API 的行為更改為 JSON 觸發(從瀏覽器調用),但由于我對 Python 的了解有限,我什至無法從 Python 客戶端調用它。有人可以幫助我如何按照手冊所示進行操作嗎?這是我的簡單客戶端:class GenericAsyncAPIConsumerWith(GenericAsyncAPIConsumer):? ? async def websocket_connect(self, message):? ? ? ? # Super Save? ? ? ? await super().websocket_connect(message)? ? ? ? # Initialized operation? ? ? ? await self.model_activity.subscribe()class UserConsumer(ObserverModelInstanceMixin, GenericAsyncAPIConsumerWith):? ? queryset = Course.objects.order_by("-start_time")? ? serializer_class = UserSerializer? ? # permission_classes = [IsAuthenticated]@model_observer(User)async def model_activity(self, message, observer=None, **kwargs):? ? # send activity to your frontend? ? await self.send_json(message)??
查看完整描述

2 回答

?
楊魅力

TA貢獻1811條經驗 獲得超6個贊

我覺得文檔有點不清楚,這就是解決方案,也做了公關。


class ModelConsumerObserver(AsyncAPIConsumer):

    async def accept(self, **kwargs):

        await super().accept()

        await self.model_change.subscribe()

    

    @model_observer(models.Test)

    async def model_change(self, message, **kwargs):

        await self.send_json(message)

從那時起,websocket 會將模型更改推送給客戶端


查看完整回答
反對 回復 2023-08-08
?
翻翻過去那場雪

TA貢獻2065條經驗 獲得超14個贊

我覺得文檔有點不清楚,這就是解決方案,也做了公關。


class ModelConsumerObserver(AsyncAPIConsumer):

    async def accept(self, **kwargs):

        await super().accept()

        await self.model_change.subscribe()

    

    @model_observer(models.Test)

    async def model_change(self, message, **kwargs):

        await self.send_json(message)

從那時起,websocket 會將模型更改推送給客戶端


查看完整回答
反對 回復 2023-08-08
  • 2 回答
  • 0 關注
  • 155 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號