Phoenix 1.3 (Elixir) Fehler: Myapp.Users.User .__ struct __ / 0 ist nicht definiert, kann die Struktur Myapp.Users.User nicht erweitern

8

Versuchen Sie, eine API mit Phoenix v1.3 nach diesem Tutorial zu erstellen:
Ссылка
( hat darauf geachtet, dass jeder Schritt dem Buchstaben folgt)

Wenn ich versuche, mix ecto.setup

auszuführen

Ich erhalte den folgenden Fehler:

%Vor%

Das lib/myapp/users/users.ex ist ziemlich groß: Ссылка

Kompletter Code auf GitHub: Ссылка

Jede Hilfe zum Debuggen wäre viel wünschenswert.

    
nelsonic 06.06.2017, 21:14
quelle

1 Antwort

3

Es gibt also ein paar Dinge, die ich bemerke:

  1. Sie haben Ihren Kontext nach Ihrem Datensatz benannt. Sie sollten Ihren Kontext nach der Idee benennen, zu der die Datensätze gehören. So etwas wie Authentication oder Account

  2. In einer Phoenix 1.3-App, in der Sie einen Account -Kontext haben, können Sie aus # 1 heraus Benutzerdatensätze mit diesem Kontext verknüpfen. In diesem Fall müssten Sie Myapp.Account.Users in lib / myapp / account / users.ex definiert haben. Hier kommt deine Struktur her.

  3. Ich denke, wie du hier gelandet bist, ist, dass der Kontext genauso heißt wie deine Aufzeichnungen und das verursacht etwas Verwirrung. In Zeile 9 Ihres Users -Kontextes aliasieren Sie Myapp.Users.User , aber dieses Modul ist niemals definiert.

Tyler Willingham 21.06.2017 22:23
quelle