feat(user): display list and fix changeset
This commit is contained in:
parent
f1c1ca6d14
commit
fbb65e77c0
3 changed files with 16 additions and 11 deletions
|
@ -12,20 +12,13 @@ defmodule LearningPhoenix.User do
|
|||
|
||||
@doc false
|
||||
def changeset(user, attrs) do
|
||||
IO.puts("called")
|
||||
user
|
||||
|> cast(attrs, [:name, :email, :password])
|
||||
|> validate_required([:name, :email, :password])
|
||||
|> validate_length(:name, min: 2)
|
||||
|> validate_length(:name, max: 30)
|
||||
|> valid_email(:email)
|
||||
end
|
||||
|
||||
def valid_email(changeset, field) do
|
||||
value = get_field(changeset, field)
|
||||
if value =~ "@" do
|
||||
changeset
|
||||
else
|
||||
add_error(changeset, field, "invalid email")
|
||||
end
|
||||
|> validate_format(:email, ~r/.+@.+\.[a-z]+/)
|
||||
|> unique_constraint(:email)
|
||||
end
|
||||
end
|
||||
|
|
|
@ -1,8 +1,11 @@
|
|||
defmodule LearningPhoenixWeb.UserController do
|
||||
use LearningPhoenixWeb, :controller
|
||||
alias LearningPhoenix.{Repo, User}
|
||||
|
||||
def index(conn, _params) do
|
||||
render(conn, :index)
|
||||
conn
|
||||
|> assign(:test, Repo.all(User))
|
||||
|> render(:index)
|
||||
end
|
||||
|
||||
def edit(conn, _params) do
|
||||
|
|
|
@ -6,4 +6,13 @@
|
|||
<p class="text-xl">
|
||||
Cette page contient la liste de tous les utilisateurs
|
||||
</p>
|
||||
<div class="flex flex-col gap-4 justify-center justify-items-center">
|
||||
<%= for user <- @test do %>
|
||||
<div class="flex flex-col gap-2">
|
||||
<p>Hello {user.name}!</p>
|
||||
<p>Your email is {user.email}</p>
|
||||
<p>And your hashed password is {user.password}.</p>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
</div>
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue