Advertisement
Guest User

Untitled

a guest
Aug 2nd, 2017
469
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.17 KB | None | 0 0
  1. %{"email" => “e@e.com", "first_name" => “Abe",
  2. "last_name" => “Sam", "password" => “foobar", "state_id" => "2"}
  3.  
  4. #Ecto.Changeset<action: nil,
  5. changes: %{password: "foobar",
  6. password_hash: “xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx."},
  7. errors: [], data: #SomeApp.User<>, valid?: true>
  8.  
  9. def update(conn, %{"id" => id, "user" => user_params}) do
  10. user = Repo.get!(User, id)
  11. changeset = User.changeset(user, user_params)
  12. case Repo.update(changeset) do
  13.  
  14. def changeset(model, params \ %{}) do
  15. model
  16. |> cast(params, [:email, :first_name, :last_name, :password])
  17. |> assoc_constraint(:state)
  18. |> validate_required([:email, :first_name, :last_name, :password])
  19. |> unique_constraint(:email)
  20. |> validate_length(:password, min: 4, max: 100)
  21. |> put_pass_hash()
  22. end
  23.  
  24. schema "users" do
  25. field :email, :string
  26. field :password, :string, virtual: true
  27. field :password_hash, :string
  28. field :first_name, :string
  29. field :last_name, :string
  30. belongs_to :state, SomeApp.State
  31.  
  32. timestamps()
  33. end
  34.  
  35. |> cast(params, [:email, :first_name, :last_name, :password])
  36.  
  37. |> cast(params, [:email, :first_name, :last_name, :password, :state_id])
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement