Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/elixir/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Elixir 存储Phoenix频道的特定于主题的数据_Elixir_Phoenix Framework - Fatal编程技术网

Elixir 存储Phoenix频道的特定于主题的数据

Elixir 存储Phoenix频道的特定于主题的数据,elixir,phoenix-framework,Elixir,Phoenix Framework,给定一个有多个用户连接到特定主题的频道,比如“房间:大厅”,我希望能够存储与频道相关的信息,我可以在每次收到新消息时检索并可能更新这些信息。从某种意义上说,我希望每个主题都是自己的GenServer一样的东西 据我所知,Phoenix.Socket.assign/3存储每个用户的本地信息,因此不起作用。我仍然不太明白您在问什么,但如果我是您,我会考虑使用来尝试做您正在做的事情。我会发布我正在查看的代理文档部分,但正如我所说,我不确定我是否正确理解了您的问题。我不太清楚@Havvy,但我认为您混淆

给定一个有多个用户连接到特定主题的
频道
,比如
“房间:大厅”
,我希望能够存储与频道相关的信息,我可以在每次收到新消息时检索并可能更新这些信息。从某种意义上说,我希望每个主题都是自己的
GenServer一样的东西


据我所知,
Phoenix.Socket.assign/3
存储每个用户的本地信息,因此不起作用。

我仍然不太明白您在问什么,但如果我是您,我会考虑使用来尝试做您正在做的事情。我会发布我正在查看的代理文档部分,但正如我所说,我不确定我是否正确理解了您的问题。

我不太清楚@Havvy,但我认为您混淆了两个不同的概念。我认为频道是凤凰城的概念,“房间”是你的聊天应用程序特有的东西。也许可以重新表述你的问题?就目前的情况来看,这有点让人困惑。是的,再多阅读一些参考文档,我发现它被称为“主题”,而不是房间。我将更新问题以使用正确的术语。您希望仅将信息存储在内存中还是将其持久化?什么样的数据,比如整个对话或关于事件/时间数量的“元数据”数据等?我想我理解@Havvy的问题,并且可以这样看:如果Phoenix让你做
def join(“room:“roomid,_params,socket”)do
,我如何访问
中的
roomid
处理
处理
,举个例子,我将对此进行投票,因为这最终是我所做的,但这并不是真的/使用/Phoenix,而只是为似乎不存在的东西添加了一个线索。