π¦Data persistence
Creating a schema and migration
mix phx.gen.schema Todo todo \
title:string \
description:string \
is_done:boolean \
--binary-iddefmodule PracticalElixirDemo.Todo do
alias PracticalElixirDemo.Repo
use Ecto.Schema
import Ecto.Query
import Ecto.Changeset
@primary_key {:id, :binary_id, autogenerate: true}
@foreign_key_type :binary_id
schema "todo" do
field :description, :string
field :title, :string
field :is_done, :boolean, default: false
timestamps(type: :utc_datetime)
end
@doc false
def changeset(todo, attrs) do
todo
|> cast(attrs, [:title, :description, :is_done])
|> validate_required([:title, :description, :is_done])
end
endRunning database migrations
Retrieving all to-do items
Creating to-do items
Marking items as done/not done
VoilΓ π
Last updated