From 9c273a473e5cc7db963628c439b96a537aefc548 Mon Sep 17 00:00:00 2001 From: KKlochko Date: Mon, 31 Jul 2023 19:01:58 +0300 Subject: [PATCH] Update the controller and the view for updated Link model. --- CHANGELOG.org | 1 + .../controllers/api/v1/link_controller.ex | 12 +++++++----- lib/link_shortener_web/views/api/v1/link_view.ex | 4 ++-- 3 files changed, 10 insertions(+), 7 deletions(-) diff --git a/CHANGELOG.org b/CHANGELOG.org index 6b2f682..b3505be 100644 --- a/CHANGELOG.org +++ b/CHANGELOG.org @@ -27,4 +27,5 @@ Rename the controller and the view names to "Link". Move Links to the Links context. Refactor to split the Links to a Link model and a Links logic. + Update the controller and the view for updated Link model. diff --git a/lib/link_shortener_web/controllers/api/v1/link_controller.ex b/lib/link_shortener_web/controllers/api/v1/link_controller.ex index 390d6f9..e4abb51 100644 --- a/lib/link_shortener_web/controllers/api/v1/link_controller.ex +++ b/lib/link_shortener_web/controllers/api/v1/link_controller.ex @@ -1,7 +1,8 @@ defmodule LinkShortenerWeb.Api.V1.LinkController do use LinkShortenerWeb, :controller - alias LinkShortener.Links + alias LinkShortener.Links.Links + alias LinkShortener.Links.Link action_fallback LinkShortenerWeb.FallbackController @@ -11,17 +12,18 @@ defmodule LinkShortenerWeb.Api.V1.LinkController do end def create(conn, %{"link" => link_params}) do - with {:ok, %Links{} = link} <- Links.insert_one(link_params) do + with {:ok, %Link{} = link} <- Links.insert_one(link_params) do conn |> put_status(:created) - |> put_resp_header("location", Routes.links_path(conn, :show, link)) - |> render("show.json", links: link) + |> put_resp_header("location", Routes.link_path(conn, :show, link)) + |> render("show.json", link: link) end end def show(conn, %{"id" => id}) do link = Links.get_one(id) - render(conn, "show.json", links: link) + render(conn, "show.json", link: link) + end end def delete(conn, %{"id" => id}) do diff --git a/lib/link_shortener_web/views/api/v1/link_view.ex b/lib/link_shortener_web/views/api/v1/link_view.ex index 9b62e6f..3998d6d 100644 --- a/lib/link_shortener_web/views/api/v1/link_view.ex +++ b/lib/link_shortener_web/views/api/v1/link_view.ex @@ -6,11 +6,11 @@ defmodule LinkShortenerWeb.Api.V1.LinkView do %{data: render_many(links, LinkView, "link.json")} end - def render("show.json", %{links: link}) do + def render("show.json", %{link: link}) do %{data: render_one(link, LinkView, "link.json")} end - def render("link.json", %{links: link}) do + def render("link.json", %{link: link}) do %{ id: link.id, name: link.name,