小编nrg*_*rgx的帖子

Django 频道 - 组名必须是仅包含 ASCII 字母数字、连字符或句点的有效 unicode 字符串

我在创建聊天室方面需要帮助,就像我进入特定房间一样(如“Python 社区”、“DjangoDev”等)。我使用的软件包:

Django==1.9.7, 
channels==1.1.8, 
asgi-redis==1.4.3
Run Code Online (Sandbox Code Playgroud)

我使用组名的 slug 字段,我在 Channels find group 中过滤这个 slug 并在每次新消息到来时调用 save 。所以问题的主要原因是 Channels 抛出一个错误,说组名无效:

(venv) alibek@OverlorD:~/Desktop/my_porject/RedProject$ ./manage.py runworker
2018-03-17 13:59:51,607 - INFO - runworker - Using single-threaded worker.
2018-03-17 13:59:51,608 - INFO - runworker - Running worker against channel layer default (asgi_redis.core.RedisChannelLayer)
2018-03-17 13:59:51,608 - INFO - worker - Listening on channels chat-messages, http.request, websocket.connect, websocket.disconnect, websocket.receive
Not Found: /home/
Not Found: /favicon.ico
Traceback (most recent call last):
  File "./manage.py", line 14, in <module>
    execute_from_command_line(sys.argv)
  File …
Run Code Online (Sandbox Code Playgroud)

javascript django django-channels

5
推荐指数
1
解决办法
2343
查看次数

DRF 嵌套序列化器。仅写入主键,但读取时获取整个对象

我不需要嵌套的创建/更新操作。我只想将pk创建的对象写入 FK/M2M 字段,并在创建主对象后从该 FK/M2M 字段获取对象。不是它的主键。

例如,我有ValueRelValue模型。这就是它们的关系:

class ValueRel(BaseModel):
    table = models.ForeignKey(
        Table,
        on_delete=models.PROTECT,
    )
    object_id = models.CharField(max_length=36)

    @property
    def related_object(self):
        related_model = self.table.get_model()
        related_object = related_model.objects.filter(pk=self.object_id).first()
        return related_object


class Value(BaseModel):
    profile = models.ForeignKey(
        Profile,
        on_delete=models.SET_NULL,
        blank=True,
        null=True,
        related_name="app_values",
    )
    # I want to write into this field `pk` and get its object
    value_rel = models.ManyToManyField(
        ValueRel,
        blank=True,
        related_name="values",
    )
    ...
Run Code Online (Sandbox Code Playgroud)

ValueRel创建 的实例并将其写入value_rel的实例后Value,我想获取ValueRel类似对象的实例。

实际结果(来自 API 的 JSON 响应) …

django serialization django-rest-framework

5
推荐指数
1
解决办法
2053
查看次数