I want to convert an existing react app (or at least the rest api for the database to elixir but every example project I find on Github has some sort or error regarding ecto. I’ve tried all the examples posted in https://elixirforum.com/t/user-authentication-in-phoenix/118/81 but encounter similar errors to this: could not compile dependency :phoenix_ecto, "mix compile" failed. You can recompile this dependency with "mix deps.compile phoenix_ecto", update it with "mix deps.update phoenix_ecto" or clean it with "mix deps.clean phoenix_ecto"
I’ve tried cleaning all my mix packages as well as mix.update --all.
Are all these projects just dead or am I missing something?
Also if anyone has suggestions of a working example of a elixir server with authentication (ideally with react as well) please do hesitate to share.
Thank you to the elixir developers I can see the magic in the bottle but still feel like I’m taping on the glass.
Thank you for any/all suggestions/ideas/setting me straight
Here is a toy project of mine https://github.com/voger/GQLardian
Very incomplete, very abandoned, very learning toy but fairly new. A very stupid blog app that I abandoned when doing permissions. No react. Just absinthe, guardian and off course the Ecto you are interested at.
Thank you all for your insightful responses. They all provide great references to study.
@yurko were you able to get this one running? I’ve tried but am receiving this error when I follow the install instructions on their README: 08:31:47.792 [error] GenServer #PID<0.4925.0> terminating ** (DBConnection.ConnectionError) tcp connect (localhost:5432): connection refused - :econnrefused (db_connection) lib/db_connection/connection.ex:148: DBConnection.Connection.connect/2 (connection) lib/connection.ex:622: Connection.enter_connect/5 (stdlib) proc_lib.erl:247: :proc_lib.init_p_do_apply/3 Last message: nil State: Postgrex.Protocol ** (Mix) The database for Boilerplate.Repo couldn't be created: an exception was raised: ** (DBConnection.ConnectionError) tcp connect (localhost:5432): connection refused - :econnrefused (db_connection) lib/db_connection/connection.ex:148: DBConnection.Connection.connect/2 (connection) lib/connection.ex:622: Connection.enter_connect/5 (stdlib) proc_lib.erl:247: :proc_lib.init_p_do_apply/3
This looks to me like postgres is not installed. Am I correct in assuming I should first install posgres on my machine (OSx 10.13) then retry the install? Also am I safe using the postgres 10.4 or should I use a older version?
Regardless you have already been more then helpful thank you very much.
The problem was that postgres had to be installed. However now that I have done this I am encountering a new error: `** (Mix) The database for Boilerplate.Repo couldn’t be created: FATAL 28P01 (invalid_password): password authentication failed for user “postgres”
09:41:21.773 [error] GenServer #PID<0.4925.0> terminating
** (Postgrex.Error) FATAL 28P01 (invalid_password): password authentication failed for user “postgres”
(db_connection) lib/db_connection/connection.ex:148: DBConnection.Connection.connect/2
(connection) lib/connection.ex:622: Connection.enter_connect/5
(stdlib) proc_lib.erl:247: :proc_lib.init_p_do_apply/3
Last message: nil
State: Postgrex.Protocol`
when running mix ecto.create
Is there a specific postgres password i need to use so that it will be compatible with ecto? or does it have to be blank? although that seems unsecure…
Regardless thank you again for all the help and while I will greatly appreciate replies I understand your all very busy so I’m mostly using this thread to think through the errors I encounter and document results for others to reference.
@yurko Thank you so much this worked. For others All I had to do was change the database name from ‘boilerplate_dev’ to ‘postgres’ this is the name of the default database that was created when I installed postgres with the enterpriseDB installer.
@voger your correct. I was able to duplicate my project and use ‘boilerplate_dev’ as database name. please ignore the previous version of this reply as that error was simply due to a node.js server interfering with phoenix.