From 55b4be9919ad8f38ad67a0390b9f06e29ebdf3e4 Mon Sep 17 00:00:00 2001 From: Muhammad Rafif Elfazri <rafif.elfazri@gmail.com> Date: Sat, 13 Feb 2021 21:22:50 +0700 Subject: [PATCH] add option to get user information byusername --- lib/diskuy_web/controllers/user_controller.ex | 5 +++++ lib/diskuy_web/router.ex | 1 + 2 files changed, 6 insertions(+) diff --git a/lib/diskuy_web/controllers/user_controller.ex b/lib/diskuy_web/controllers/user_controller.ex index 3946702..c83fbd9 100644 --- a/lib/diskuy_web/controllers/user_controller.ex +++ b/lib/diskuy_web/controllers/user_controller.ex @@ -28,6 +28,11 @@ defmodule DiskuyWeb.UserController do render(conn, "show.json", user: user) end + def show_by_username(conn, %{"name" => name}) do + user = Account.get_by_username!(name) + render(conn, "show.json", user: user) + end + def update(conn, %{"id" => id, "user" => user_params}) do user = Account.get_user!(id) diff --git a/lib/diskuy_web/router.ex b/lib/diskuy_web/router.ex index dd3f35f..5a44649 100644 --- a/lib/diskuy_web/router.ex +++ b/lib/diskuy_web/router.ex @@ -40,6 +40,7 @@ defmodule DiskuyWeb.Router do pipe_through :api get "/users", UserController, :index get "/users/:id", UserController, :show + get "/users/name/:name", UserController, :show_by_username resources "/topics", TopicController, except: [:new, :edit, :create, :update, :delete] options "/topics", TopicController, :options options "/topics/:id", TopicController, :options -- GitLab