Ich habe einfache Chat-App mit Phoenix Framework geschrieben.Wie kann ich auf Daten in der Karte in Elixir zugreifen
Ich möchte einige Daten in die Buchse für den Zugriff auf
dies die Methode im Aus diesem
def join("room:" <> _user, _, socket) do
IO.inspect socket
send self(), :after_join
{:ok, socket}
end
verwendet, wird es schön Karte mit allen Details geben. was ist der beste Weg, um alle Zimmer zu bekommen (Thema: „Zimmer: Testuser“) zur Verfügung mit dieser Methode
dies ist das Probenergebnis in der Konsole zeigte
[info] JOIN room:Testuser to PhoenixChat.RoomChannel
Transport: Phoenix.Transports.WebSocket
Parameters: %{}
%Phoenix.Socket{assigns: %{user: "Testuser"}, channel: PhoenixChat.RoomChannel,
channel_pid: #PID<0.409.0>, endpoint: PhoenixChat.Endpoint,
handler: PhoenixChat.UserSocket, id: nil, joined: false,
pubsub_server: PhoenixChat.PubSub, ref: nil,
serializer: Phoenix.Transports.WebSocketSerializer, topic: "room:Testuser",
transport: Phoenix.Transports.WebSocket, transport_name: :websocket,
transport_pid: #PID<0.375.0>}
[info] Replied room:Testuser :ok
Es ist nicht sehr klar, welchen Wert Sie in diesem Beispiel erhalten möchten - könnten Sie etwas expliziter sein? –
Thema: "Raum: Testuser" Dies ist der Wert, den ich zugreifen möchte – smartechno
Sie meinen wie 'socket.topic'? – Dogbert