Working with Ecto: Difference between revisions
From ElixirBlocks
No edit summary |
No edit summary |
||
Line 30: | Line 30: | ||
</source> | </source> | ||
Revision as of 18:16, 5 October 2023
This page is in progress
Working with ECTO in IEX can be confusing. These examples below are performed with a table named Testbeds created using the Phoenix Generator. The functions references are in app/testbeds.ex where app is the name of your application and testbeds.ex is the name of your table.
Make sure you are aware of camel casing.
IEX Commands (with example data)
Get All
App.Testbeds.Testbed |> App.Repo.all
Insert
%App.Testbeds.Testbed{name: "some-item-name"} |> App.Repo.insert
Update all tables that contain a field with a chosen value
def reset_testbeds do items = from t in Testbed, where: t.status == "Taken" Repo.update_all(items, set: [status: "Available", developer: "None"]) |> broadcast_change([:testbed, :reset]) end
References
https://brooklinmyers.medium.com/ecto-with-phoenix-in-4-minutes-9b7c447055c6