iex(12)> fruits = App.Shop.Category.create!(%{name: "Fruits"})
#App.Shop.Category<
__meta__: #Ecto.Schema.Metadata<:loaded>,
id: "3a3ed806-6df4-4602-aff6-4eed50e814b2",
name: "Fruits",
...
>
iex(13)> banana = App.Shop.Product.create!(%{name: "Banana", price: 0.1, category_id: fruits.id})
#App.Shop.Product<
promotion: #Ash.NotLoaded<:relationship>,
category: #Ash.NotLoaded<:relationship>,
__meta__: #Ecto.Schema.Metadata<:loaded>,
id: "d655fa01-ece5-4ad9-b927-764a6a48b165",
name: "Banana",
price: Decimal.new("0.1"),
category_id: "3a3ed806-6df4-4602-aff6-4eed50e814b2",
...
>
iex(14)> App.Shop.Product.by_name("Banana")
{:ok,
#App.Shop.Product<
promotion: #Ash.NotLoaded<:relationship>,
category: #Ash.NotLoaded<:relationship>,
__meta__: #Ecto.Schema.Metadata<:loaded>,
id: "d655fa01-ece5-4ad9-b927-764a6a48b165",
name: "Banana",
price: Decimal.new("0.1"),
category_id: "3a3ed806-6df4-4602-aff6-4eed50e814b2",
...
>}
iex(15)> App.Shop.load(banana, :category)
{:ok,
#App.Shop.Product<
promotion: #Ash.NotLoaded<:relationship>,
category: #App.Shop.Category<
__meta__: #Ecto.Schema.Metadata<:loaded>,
id: "3a3ed806-6df4-4602-aff6-4eed50e814b2",
name: "Fruits",
...
>,
__meta__: #Ecto.Schema.Metadata<:loaded>,
id: "d655fa01-ece5-4ad9-b927-764a6a48b165",
name: "Banana",
price: Decimal.new("0.1"),
category_id: "3a3ed806-6df4-4602-aff6-4eed50e814b2",
...
>}
iex(12)> fruits = App.Shop.Category.create!(%{name: "Fruits"})
#App.Shop.Category<
__meta__: #Ecto.Schema.Metadata<:loaded>,
id: "3a3ed806-6df4-4602-aff6-4eed50e814b2",
name: "Fruits",
...
>
iex(13)> banana = App.Shop.Product.create!(%{name: "Banana", price: 0.1, category_id: fruits.id})
#App.Shop.Product<
promotion: #Ash.NotLoaded<:relationship>,
category: #Ash.NotLoaded<:relationship>,
__meta__: #Ecto.Schema.Metadata<:loaded>,
id: "d655fa01-ece5-4ad9-b927-764a6a48b165",
name: "Banana",
price: Decimal.new("0.1"),
category_id: "3a3ed806-6df4-4602-aff6-4eed50e814b2",
...
>
iex(14)> App.Shop.Product.by_name("Banana")
{:ok,
#App.Shop.Product<
promotion: #Ash.NotLoaded<:relationship>,
category: #Ash.NotLoaded<:relationship>,
__meta__: #Ecto.Schema.Metadata<:loaded>,
id: "d655fa01-ece5-4ad9-b927-764a6a48b165",
name: "Banana",
price: Decimal.new("0.1"),
category_id: "3a3ed806-6df4-4602-aff6-4eed50e814b2",
...
>}
iex(15)> App.Shop.load(banana, :category)
{:ok,
#App.Shop.Product<
promotion: #Ash.NotLoaded<:relationship>,
category: #App.Shop.Category<
__meta__: #Ecto.Schema.Metadata<:loaded>,
id: "3a3ed806-6df4-4602-aff6-4eed50e814b2",
name: "Fruits",
...
>,
__meta__: #Ecto.Schema.Metadata<:loaded>,
id: "d655fa01-ece5-4ad9-b927-764a6a48b165",
name: "Banana",
price: Decimal.new("0.1"),
category_id: "3a3ed806-6df4-4602-aff6-4eed50e814b2",
...
>}