File tree Expand file tree Collapse file tree 2 files changed +17
-8
lines changed
pointing_party_web/controllers Expand file tree Collapse file tree 2 files changed +17
-8
lines changed Original file line number Diff line number Diff line change 1
1
defmodule PointingParty.User do
2
2
use Ecto.Schema
3
3
import Ecto.Changeset
4
+ alias PointingParty.User
4
5
5
6
schema "users" do
6
7
field :username , :string
7
8
end
8
9
10
+ def create ( attrs ) do
11
+ changeset = changeset ( % User { } , attrs )
12
+ if changeset . valid? do
13
+ user = apply_changes ( changeset )
14
+ { :ok , user }
15
+ else
16
+ { :error , % { changeset | action: :insert } }
17
+ end
18
+ end
19
+
9
20
@ doc false
10
21
def changeset ( user , attrs \\ % { } ) do
11
22
user
Original file line number Diff line number Diff line change @@ -8,14 +8,12 @@ defmodule PointingPartyWeb.SessionController do
8
8
end
9
9
10
10
def create ( conn , params ) do
11
- changeset = User . changeset ( % User { } , params [ "user" ] )
12
- if changeset . valid? do
13
- user = Ecto.Changeset . apply_changes ( changeset )
14
- put_session ( conn , :username , user . username )
15
- |> redirect ( to: "/cards" ) |> halt ( )
16
- else
17
- changeset = % { changeset | action: :insert }
18
- render ( conn , "new.html" , changeset: changeset )
11
+ case User . create ( params [ "user" ] ) do
12
+ { :ok , user } ->
13
+ put_session ( conn , :username , user . username )
14
+ |> redirect ( to: "/cards" ) |> halt ( )
15
+ { :error , changeset } ->
16
+ render ( conn , "new.html" , changeset: changeset )
19
17
end
20
18
end
21
19
You can’t perform that action at this time.
0 commit comments