live-view-chat
live-view-chat copied to clipboard
did this work on an earlier version of liveview?
I've tried multiple branches and while I can create a user and chat rooms, there doesn't seem to be a way to view chats currently? The liveview mix dependency doesn't specify a tag to checkout -- did things break due to changes?
@DarkMarmot it is likely as LiveView continues to develop, we'll need to come back to these or make a note about them being out-of-date. I've assigned @SophieDeBenedetto who is the master of all things LiveView and the creator of this repo to chime in.
I noticed the liveview repo doesn't seem to be using tagged releases either at this point, so definitely hard to maintain as a dependency :(
Hi @DarkMarmot, thanks for raising this issue! I am able to visit /sessions/new and sign in with the username and password I created in the console. Then, I get redirect to the /chats page where I see my list of chats. I can select any chat and view it at /chats/:id. Does this same process not work for you? Also can you let me know if you're experiencing any particular error messages in the application logs when you try this process? Thanks!
Hi! I checked out the master branch to see the completed project -- and maybe that was part of the problem? It looks like that branch doesn't have the seeds.exs file with demo information, so I pulled the copy from the tutorial branch and could login as Alice. I can then see the seeded chat, but if I submitted a message it would blow up. Also, the 'members' box is empty (I assume it might've had an issue?)
Here's the GenServer crash on submit:
[info] GET /chats/2
[debug] Processing with PhatWeb.ChatController.show/2
Parameters: %{"id" => "2"}
Pipelines: [:browser]
[debug] QUERY OK source="users" db=8.6ms
SELECT u0."id", u0."first_name", u0."last_name", u0."email", u0."encrypted_password", u0."inserted_at", u0."updated_at" FROM "users" AS u0 WHERE (u0."id" = $1) [4]
[debug] QUERY OK source="chats" db=5.4ms queue=1.1ms
SELECT c0."id", c0."room_name", c0."inserted_at", c0."updated_at" FROM "chats" AS c0 WHERE (c0."id" = $1) [2]
[debug] QUERY OK source="messages" db=7.0ms queue=1.6ms
SELECT m0."id", m0."chat_id", m0."user_id", m0."content", m0."inserted_at", m0."updated_at", m0."chat_id" FROM "messages" AS m0 WHERE (m0."chat_id" = $1) ORDER BY m0."chat_id" [2]
[debug] QUERY OK source="users" db=4.3ms queue=1.1ms
SELECT u0."id", u0."first_name", u0."last_name", u0."email", u0."encrypted_password", u0."inserted_at", u0."updated_at", u0."id" FROM "users" AS u0 WHERE (u0."id" = ANY($1)) [[3, 4]]
[info] Sent 200 in 46ms
[info] CONNECT Phoenix.LiveView.Socket
Transport: :websocket
Connect Info: %{}
Parameters: %{"vsn" => "2.0.0"}
[info] Replied Phoenix.LiveView.Socket :ok
[info] Replied phoenix:live_reload :ok
[error] GenServer #PID<0.568.0> terminating
** (UndefinedFunctionError) function PhatWeb.ChatLiveView.handle_event/3 is undefined or private
(phat) PhatWeb.ChatLiveView.handle_event("message", %{"_csrf_token" => "QB8EWCM/UAsROHUsPwknBBILNBggEAAA14ghDRcJkW0mxHpujjEWbw==", "_utf8" => "✓", "message" => %{"chat_id" => "2", "content" => "poo", "user_id" => "4"}}, %Phoenix.LiveView.Socket{assigns: %{chat: %Phat.Chats.Chat{__meta__: #Ecto.Schema.Metadata<:loaded, "chats">, id: 2, inserted_at: ~N[2019-06-28 16:49:10], messages: [%Phat.Chats.Message{__meta__: #Ecto.Schema.Metadata<:loaded, "messages">, chat: #Ecto.Association.NotLoaded<association :chat is not loaded>, chat_id: 2, content: "Good morning!", id: 1, inserted_at: ~N[2019-06-28 16:49:10], updated_at: ~N[2019-06-28 16:49:10], user: %Phat.Accounts.User{__meta__: #Ecto.Schema.Metadata<:loaded, "users">, email: "[email protected]", encrypted_password: "$2b$12$1tOSZ/KggKXrS2JfXrW2YOkoPF1HNWLSfFvEdaLi6783Q4lwRnkvO", first_name: "Jim", id: 3, inserted_at: ~N[2019-06-28 16:49:10], last_name: "Smith", password: nil, updated_at: ~N[2019-06-28 16:49:10]}, user_id: 3}, %Phat.Chats.Message{__meta__: #Ecto.Schema.Metadata<:loaded, "messages">, chat: #Ecto.Association.NotLoaded<association :chat is not loaded>, chat_id: 2, content: "Hi!", id: 2, inserted_at: ~N[2019-06-28 16:49:10], updated_at: ~N[2019-06-28 16:49:10], user: %Phat.Accounts.User{__meta__: #Ecto.Schema.Metadata<:loaded, "users">, email: "[email protected]", encrypted_password: "$2b$12$pVjHi20t0fmsRxvlkYGavuC.KHXkvnhKaaX0l.F4qlXyvfexXVj3y", first_name: "Alice", id: 4, inserted_at: ~N[2019-06-28 16:49:10], last_name: "Johnson", password: nil, updated_at: ~N[2019-06-28 16:49:10]}, user_id: 4}, %Phat.Chats.Message{__meta__: #Ecto.Schema.Metadata<:loaded, "messages">, chat: #Ecto.Association.NotLoaded<association :chat is not loaded>, chat_id: 2, content: "What's new?", id: 3, inserted_at: ~N[2019-06-28 16:49:10], updated_at: ~N[2019-06-28 16:49:10], user: %Phat.Accounts.User{__meta__: #Ecto.Schema.Metadata<:loaded, "users">, email: "[email protected]", encrypted_password: "$2b$12$1tOSZ/KggKXrS2JfXrW2YOkoPF1HNWLSfFvEdaLi6783Q4lwRnkvO", first_name: "Jim", id: 3, inserted_at: ~N[2019-06-28 16:49:10], last_name: "Smith", password: nil, updated_at: ~N[2019-06-28 16:49:10]}, user_id: 3}, %Phat.Chats.Message{__meta__: #Ecto.Schema.Metadata<:loaded, "messages">, chat: #Ecto.Association.NotLoaded<association :chat is not loaded>, chat_id: 2, content: "Not much, how are you?", id: 4, inserted_at: ~N[2019-06-28 16:49:10], updated_at: ~N[2019-06-28 16:49:10], user: %Phat.Accounts.User{__meta__: #Ecto.Schema.Metadata<:loaded, "users">, email: "[email protected]", encrypted_password: "$2b$12$pVjHi20t0fmsRxvlkYGavuC.KHXkvnhKaaX0l.F4qlXyvfexXVj3y", first_name: "Alice", id: 4, inserted_at: ~N[2019-06-28 16:49:10], last_name: "Johnson", password: nil, updated_at: ~N[2019-06-28 16:49:10]}, user_id: 4}, %Phat.Chats.Message{__meta__: #Ecto.Schema.Metadata<:loaded, "messages">, chat: #Ecto.Association.NotLoaded<association :chat is not loaded>, chat_id: 2, content: "Good!", id: 5, inserted_at: ~N[2019-06-28 16:49:10], updated_at: ~N[2019-06-28 16:49:10], user: %Phat.Accounts.User{__meta__: #Ecto.Schema.Metadata<:loaded, "users">, email: "[email protected]", encrypted_password: "$2b$12$1tOSZ/KggKXrS2JfXrW2YOkoPF1HNWLSfFvEdaLi6783Q4lwRnkvO", first_name: "Jim", id: 3, inserted_at: ~N[2019-06-28 16:49:10], last_name: "Smith", password: nil, updated_at: ~N[2019-06-28 16:49:10]}, user_id: 3}], room_name: "Jim's Workspace", updated_at: ~N[2019-06-28 16:49:10]}, current_user: %Phat.Accounts.User{__meta__: #Ecto.Schema.Metadata<:loaded, "users">, email: "[email protected]", encrypted_password: "$2b$12$pVjHi20t0fmsRxvlkYGavuC.KHXkvnhKaaX0l.F4qlXyvfexXVj3y", first_name: "Alice", id: 4, inserted_at: ~N[2019-06-28 16:49:10], last_name: "Johnson", password: nil, updated_at: ~N[2019-06-28 16:49:10]}, message: #Ecto.Changeset<action: nil, changes: %{}, errors: [chat_id: {"can't be blank", [validation: :required]}, content: {"can't be blank", [validation: :required]}, user_id: {"can't be blank", [validation: :required]}], data: #Phat.Chats.Message<>, valid?: false>}, changed: %{}, connected?: true, endpoint: PhatWeb.Endpoint, fingerprints: {284406746600463432272266156100099175712, %{1 => :comprehension}}, id: "phx-DXgpIdKw", parent_pid: nil, private: %{assigned_new: {%{}, []}}, stopped: nil})
(phoenix_live_view) lib/phoenix_live_view/channel.ex:63: Phoenix.LiveView.Channel.handle_info/2
(stdlib) gen_server.erl:637: :gen_server.try_dispatch/4
(stdlib) gen_server.erl:711: :gen_server.handle_msg/6
(stdlib) proc_lib.erl:249: :proc_lib.init_p_do_apply/3
Last message: %Phoenix.Socket.Message{event: "event", join_ref: "1", payload: %{"event" => "message", "type" => "form", "value" => "_csrf_token=QB8EWCM%2FUAsROHUsPwknBBILNBggEAAA14ghDRcJkW0mxHpujjEWbw%3D%3D&_utf8=%E2%9C%93&message%5Bcontent%5D=poo&message%5Buser_id%5D=4&message%5Bchat_id%5D=2"}, ref: "2", topic: "lv:phx-DXgpIdKw"}
State: %{children_ids: %{}, children_pids: %{}, join_ref: "1", serializer: Phoenix.Socket.V2.JSONSerializer, socket: %Phoenix.LiveView.Socket{assigns: %{chat: %Phat.Chats.Chat{__meta__: #Ecto.Schema.Metadata<:loaded, "chats">, id: 2, inserted_at: ~N[2019-06-28 16:49:10], messages: [%Phat.Chats.Message{__meta__: #Ecto.Schema.Metadata<:loaded, "messages">, chat: #Ecto.Association.NotLoaded<association :chat is not loaded>, chat_id: 2, content: "Good morning!", id: 1, inserted_at: ~N[2019-06-28 16:49:10], updated_at: ~N[2019-06-28 16:49:10], user: %Phat.Accounts.User{__meta__: #Ecto.Schema.Metadata<:loaded, "users">, email: "[email protected]", encrypted_password: "$2b$12$1tOSZ/KggKXrS2JfXrW2YOkoPF1HNWLSfFvEdaLi6783Q4lwRnkvO", first_name: "Jim", id: 3, inserted_at: ~N[2019-06-28 16:49:10], last_name: "Smith", password: nil, updated_at: ~N[2019-06-28 16:49:10]}, user_id: 3}, %Phat.Chats.Message{__meta__: #Ecto.Schema.Metadata<:loaded, "messages">, chat: #Ecto.Association.NotLoaded<association :chat is not loaded>, chat_id: 2, content: "Hi!", id: 2, inserted_at: ~N[2019-06-28 16:49:10], updated_at: ~N[2019-06-28 16:49:10], user: %Phat.Accounts.User{__meta__: #Ecto.Schema.Metadata<:loaded, "users">, email: "[email protected]", encrypted_password: "$2b$12$pVjHi20t0fmsRxvlkYGavuC.KHXkvnhKaaX0l.F4qlXyvfexXVj3y", first_name: "Alice", id: 4, inserted_at: ~N[2019-06-28 16:49:10], last_name: "Johnson", password: nil, updated_at: ~N[2019-06-28 16:49:10]}, user_id: 4}, %Phat.Chats.Message{__meta__: #Ecto.Schema.Metadata<:loaded, "messages">, chat: #Ecto.Association.NotLoaded<association :chat is not loaded>, chat_id: 2, content: "What's new?", id: 3, inserted_at: ~N[2019-06-28 16:49:10], updated_at: ~N[2019-06-28 16:49:10], user: %Phat.Accounts.User{__meta__: #Ecto.Schema.Metadata<:loaded, "users">, email: "[email protected]", encrypted_password: "$2b$12$1tOSZ/KggKXrS2JfXrW2YOkoPF1HNWLSfFvEdaLi6783Q4lwRnkvO", first_name: "Jim", id: 3, inserted_at: ~N[2019-06-28 16:49:10], last_name: "Smith", password: nil, updated_at: ~N[2019-06-28 16:49:10]}, user_id: 3}, %Phat.Chats.Message{__meta__: #Ecto.Schema.Metadata<:loaded, "messages">, chat: #Ecto.Association.NotLoaded<association :chat is not loaded>, chat_id: 2, content: "Not much, how are you?", id: 4, inserted_at: ~N[2019-06-28 16:49:10], updated_at: ~N[2019-06-28 16:49:10], user: %Phat.Accounts.User{__meta__: #Ecto.Schema.Metadata<:loaded, "users">, email: "[email protected]", encrypted_password: "$2b$12$pVjHi20t0fmsRxvlkYGavuC.KHXkvnhKaaX0l.F4qlXyvfexXVj3y", first_name: "Alice", id: 4, inserted_at: ~N[2019-06-28 16:49:10], last_name: "Johnson", password: nil, updated_at: ~N[2019-06-28 16:49:10]}, user_id: 4}, %Phat.Chats.Message{__meta__: #Ecto.Schema.Metadata<:loaded, "messages">, chat: #Ecto.Association.NotLoaded<association :chat is not loaded>, chat_id: 2, content: "Good!", id: 5, inserted_at: ~N[2019-06-28 16:49:10], updated_at: ~N[2019-06-28 16:49:10], user: %Phat.Accounts.User{__meta__: #Ecto.Schema.Metadata<:loaded, "users">, email: "[email protected]", encrypted_password: "$2b$12$1tOSZ/K (truncated)
[error] GenServer #PID<0.573.0> terminating
** (UndefinedFunctionError) function PhatWeb.ChatLiveView.handle_event/3 is undefined or private
(phat) PhatWeb.ChatLiveView.handle_event("message", %{"_csrf_token" => "BD0bWmZTGwdWHxsABBMIdAAOPXMZNgAAcys161KP1/V9gkMDWCnDwg==", "_utf8" => "✓", "message" => %{"chat_id" => "2", "content" => "hello", "user_id" => "4"}}, %Phoenix.LiveView.Socket{assigns: %{chat: %Phat.Chats.Chat{__meta__: #Ecto.Schema.Metadata<:loaded, "chats">, id: 2, inserted_at: ~N[2019-06-28 16:49:10], messages: [%Phat.Chats.Message{__meta__: #Ecto.Schema.Metadata<:loaded, "messages">, chat: #Ecto.Association.NotLoaded<association :chat is not loaded>, chat_id: 2, content: "Good morning!", id: 1, inserted_at: ~N[2019-06-28 16:49:10], updated_at: ~N[2019-06-28 16:49:10], user: %Phat.Accounts.User{__meta__: #Ecto.Schema.Metadata<:loaded, "users">, email: "[email protected]", encrypted_password: "$2b$12$1tOSZ/KggKXrS2JfXrW2YOkoPF1HNWLSfFvEdaLi6783Q4lwRnkvO", first_name: "Jim", id: 3, inserted_at: ~N[2019-06-28 16:49:10], last_name: "Smith", password: nil, updated_at: ~N[2019-06-28 16:49:10]}, user_id: 3}, %Phat.Chats.Message{__meta__: #Ecto.Schema.Metadata<:loaded, "messages">, chat: #Ecto.Association.NotLoaded<association :chat is not loaded>, chat_id: 2, content: "Hi!", id: 2, inserted_at: ~N[2019-06-28 16:49:10], updated_at: ~N[2019-06-28 16:49:10], user: %Phat.Accounts.User{__meta__: #Ecto.Schema.Metadata<:loaded, "users">, email: "[email protected]", encrypted_password: "$2b$12$pVjHi20t0fmsRxvlkYGavuC.KHXkvnhKaaX0l.F4qlXyvfexXVj3y", first_name: "Alice", id: 4, inserted_at: ~N[2019-06-28 16:49:10], last_name: "Johnson", password: nil, updated_at: ~N[2019-06-28 16:49:10]}, user_id: 4}, %Phat.Chats.Message{__meta__: #Ecto.Schema.Metadata<:loaded, "messages">, chat: #Ecto.Association.NotLoaded<association :chat is not loaded>, chat_id: 2, content: "What's new?", id: 3, inserted_at: ~N[2019-06-28 16:49:10], updated_at: ~N[2019-06-28 16:49:10], user: %Phat.Accounts.User{__meta__: #Ecto.Schema.Metadata<:loaded, "users">, email: "[email protected]", encrypted_password: "$2b$12$1tOSZ/KggKXrS2JfXrW2YOkoPF1HNWLSfFvEdaLi6783Q4lwRnkvO", first_name: "Jim", id: 3, inserted_at: ~N[2019-06-28 16:49:10], last_name: "Smith", password: nil, updated_at: ~N[2019-06-28 16:49:10]}, user_id: 3}, %Phat.Chats.Message{__meta__: #Ecto.Schema.Metadata<:loaded, "messages">, chat: #Ecto.Association.NotLoaded<association :chat is not loaded>, chat_id: 2, content: "Not much, how are you?", id: 4, inserted_at: ~N[2019-06-28 16:49:10], updated_at: ~N[2019-06-28 16:49:10], user: %Phat.Accounts.User{__meta__: #Ecto.Schema.Metadata<:loaded, "users">, email: "[email protected]", encrypted_password: "$2b$12$pVjHi20t0fmsRxvlkYGavuC.KHXkvnhKaaX0l.F4qlXyvfexXVj3y", first_name: "Alice", id: 4, inserted_at: ~N[2019-06-28 16:49:10], last_name: "Johnson", password: nil, updated_at: ~N[2019-06-28 16:49:10]}, user_id: 4}, %Phat.Chats.Message{__meta__: #Ecto.Schema.Metadata<:loaded, "messages">, chat: #Ecto.Association.NotLoaded<association :chat is not loaded>, chat_id: 2, content: "Good!", id: 5, inserted_at: ~N[2019-06-28 16:49:10], updated_at: ~N[2019-06-28 16:49:10], user: %Phat.Accounts.User{__meta__: #Ecto.Schema.Metadata<:loaded, "users">, email: "[email protected]", encrypted_password: "$2b$12$1tOSZ/KggKXrS2JfXrW2YOkoPF1HNWLSfFvEdaLi6783Q4lwRnkvO", first_name: "Jim", id: 3, inserted_at: ~N[2019-06-28 16:49:10], last_name: "Smith", password: nil, updated_at: ~N[2019-06-28 16:49:10]}, user_id: 3}], room_name: "Jim's Workspace", updated_at: ~N[2019-06-28 16:49:10]}, current_user: %Phat.Accounts.User{__meta__: #Ecto.Schema.Metadata<:loaded, "users">, email: "[email protected]", encrypted_password: "$2b$12$pVjHi20t0fmsRxvlkYGavuC.KHXkvnhKaaX0l.F4qlXyvfexXVj3y", first_name: "Alice", id: 4, inserted_at: ~N[2019-06-28 16:49:10], last_name: "Johnson", password: nil, updated_at: ~N[2019-06-28 16:49:10]}, message: #Ecto.Changeset<action: nil, changes: %{}, errors: [chat_id: {"can't be blank", [validation: :required]}, content: {"can't be blank", [validation: :required]}, user_id: {"can't be blank", [validation: :required]}], data: #Phat.Chats.Message<>, valid?: false>}, changed: %{}, connected?: true, endpoint: PhatWeb.Endpoint, fingerprints: {284406746600463432272266156100099175712, %{1 => :comprehension}}, id: "phx-DXgpIdKw", parent_pid: nil, private: %{assigned_new: {%{}, []}}, stopped: nil})
(phoenix_live_view) lib/phoenix_live_view/channel.ex:63: Phoenix.LiveView.Channel.handle_info/2
(stdlib) gen_server.erl:637: :gen_server.try_dispatch/4
(stdlib) gen_server.erl:711: :gen_server.handle_msg/6
(stdlib) proc_lib.erl:249: :proc_lib.init_p_do_apply/3
Last message: %Phoenix.Socket.Message{event: "event", join_ref: "3", payload: %{"event" => "message", "type" => "form", "value" => "_csrf_token=BD0bWmZTGwdWHxsABBMIdAAOPXMZNgAAcys161KP1%2FV9gkMDWCnDwg%3D%3D&_utf8=%E2%9C%93&message%5Bcontent%5D=hello&message%5Buser_id%5D=4&message%5Bchat_id%5D=2"}, ref: "5", topic: "lv:phx-DXgpIdKw"}
State: %{children_ids: %{}, children_pids: %{}, join_ref: "3", serializer: Phoenix.Socket.V2.JSONSerializer, socket: %Phoenix.LiveView.Socket{assigns: %{chat: %Phat.Chats.Chat{__meta__: #Ecto.Schema.Metadata<:loaded, "chats">, id: 2, inserted_at: ~N[2019-06-28 16:49:10], messages: [%Phat.Chats.Message{__meta__: #Ecto.Schema.Metadata<:loaded, "messages">, chat: #Ecto.Association.NotLoaded<association :chat is not loaded>, chat_id: 2, content: "Good morning!", id: 1, inserted_at: ~N[2019-06-28 16:49:10], updated_at: ~N[2019-06-28 16:49:10], user: %Phat.Accounts.User{__meta__: #Ecto.Schema.Metadata<:loaded, "users">, email: "[email protected]", encrypted_password: "$2b$12$1tOSZ/KggKXrS2JfXrW2YOkoPF1HNWLSfFvEdaLi6783Q4lwRnkvO", first_name: "Jim", id: 3, inserted_at: ~N[2019-06-28 16:49:10], last_name: "Smith", password: nil, updated_at: ~N[2019-06-28 16:49:10]}, user_id: 3}, %Phat.Chats.Message{__meta__: #Ecto.Schema.Metadata<:loaded, "messages">, chat: #Ecto.Association.NotLoaded<association :chat is not loaded>, chat_id: 2, content: "Hi!", id: 2, inserted_at: ~N[2019-06-28 16:49:10], updated_at: ~N[2019-06-28 16:49:10], user: %Phat.Accounts.User{__meta__: #Ecto.Schema.Metadata<:loaded, "users">, email: "[email protected]", encrypted_password: "$2b$12$pVjHi20t0fmsRxvlkYGavuC.KHXkvnhKaaX0l.F4qlXyvfexXVj3y", first_name: "Alice", id: 4, inserted_at: ~N[2019-06-28 16:49:10], last_name: "Johnson", password: nil, updated_at: ~N[2019-06-28 16:49:10]}, user_id: 4}, %Phat.Chats.Message{__meta__: #Ecto.Schema.Metadata<:loaded, "messages">, chat: #Ecto.Association.NotLoaded<association :chat is not loaded>, chat_id: 2, content: "What's new?", id: 3, inserted_at: ~N[2019-06-28 16:49:10], updated_at: ~N[2019-06-28 16:49:10], user: %Phat.Accounts.User{__meta__: #Ecto.Schema.Metadata<:loaded, "users">, email: "[email protected]", encrypted_password: "$2b$12$1tOSZ/KggKXrS2JfXrW2YOkoPF1HNWLSfFvEdaLi6783Q4lwRnkvO", first_name: "Jim", id: 3, inserted_at: ~N[2019-06-28 16:49:10], last_name: "Smith", password: nil, updated_at: ~N[2019-06-28 16:49:10]}, user_id: 3}, %Phat.Chats.Message{__meta__: #Ecto.Schema.Metadata<:loaded, "messages">, chat: #Ecto.Association.NotLoaded<association :chat is not loaded>, chat_id: 2, content: "Not much, how are you?", id: 4, inserted_at: ~N[2019-06-28 16:49:10], updated_at: ~N[2019-06-28 16:49:10], user: %Phat.Accounts.User{__meta__: #Ecto.Schema.Metadata<:loaded, "users">, email: "[email protected]", encrypted_password: "$2b$12$pVjHi20t0fmsRxvlkYGavuC.KHXkvnhKaaX0l.F4qlXyvfexXVj3y", first_name: "Alice", id: 4, inserted_at: ~N[2019-06-28 16:49:10], last_name: "Johnson", password: nil, updated_at: ~N[2019-06-28 16:49:10]}, user_id: 4}, %Phat.Chats.Message{__meta__: #Ecto.Schema.Metadata<:loaded, "messages">, chat: #Ecto.Association.NotLoaded<association :chat is not loaded>, chat_id: 2, content: "Good!", id: 5, inserted_at: ~N[2019-06-28 16:49:10], updated_at: ~N[2019-06-28 16:49:10], user: %Phat.Accounts.User{__meta__: #Ecto.Schema.Metadata<:loaded, "users">, email: "[email protected]", encrypted_password: "$2b$12$1tO (truncated)
Doh -- i forgot to switch branches back :(
Sorry -- I think the only thing I should be reporting is that you might want to copy the seeds.exs from tutorial over to the master branch.
Apologies!
Thanks!
No prob! Thanks and I will definitely make that change!