こんにちは!
プログラミング未経験文系出身、Elixirの国に迷い込んだ?!見習いアルケミストのaliceと申します。
今回はPhoenixのrouterとコントローラの追加について学んだことをまとめます。2024/4/6に開催したイベントpiyopiyo.ex #29:『Elixir実践入門』を読んでみよう!の成果です。
目的
エンドポイント/usersにアクセスした時、テキスト"Hello! This is the result of piyopiyoex #29"
を画面に表示する
実行環境
Windows 11 + WSL2 + Ubuntu 22.04
Elixir v1.16.2-otp-26
Erlang v26.0.2
仮説
resources "/users", UserController
をrouterに追加+アクセス時対応する処理を書く。
結果
Phoenixプロジェクト作成
hello
という名前でPhoenixプロジェクトを作成します。
bash
mix phx.new hello
cd hello
mix ecto.create
routerにエンドポイントを追加
lib/hello_web/router.ex
scope "/", HelloWeb do
pipe_through :browser
get "/", PageController, :home
+ resources "/users", UserController
end
コントローラとアクセス時に何をしてほしいか(index関数)を追加
lib/hello_web/controllers/user_controller.ex
defmodule HelloWeb.UserController do
use HelloWeb, :controller
def index(conn, _params) do
text(conn, "Hello! This is the result of piyopiyoex #29")
end
end
できました(^▽^)/
bash
mix phx.server
~Elixirの国のご案内~
↓Elixirって何ぞや?と思ったらこちらもどぞ。Elixirは先端のアレコレをだいたい全部できちゃいます
↓ゼロからElixirを始めるなら「エリクサーチ」がおすすめ!私もエンジニア未経験から学習中です。
↓We Are The Alchemists, my friends!1
Elixirコミュニティは本当に優しくて温かい人たちばかり!
私が挫折せずにいられるのもこの恵まれた環境のおかげです。
まずは気軽にコミュニティを訪れてみてください。2
-
@torifukukaiouさんのAwesomeな名言をお借りしました。Elixirコミュニティを一言で表すと、これに尽きます。 ↩