this repo has no description

Handle data mapping in view

hauleth.dev e7b117f5 85b2521d

verified
Changed files
+12 -4
lib
esl_hn_web
+2 -2
lib/esl_hn_web/api/controller.ex
···
use EslHnWeb, :controller
def index(conn, _) do
-
render(conn, items: Enum.map([], &one/1))
end
def show(conn, %{"id" => _id}) do
-
render(conn, item: one(%EslHn.Hn.Story{}))
end
defp one(%EslHn.Hn.Story{} = story) do
···
use EslHnWeb, :controller
def index(conn, _) do
+
render(conn, items: EslHn.all(page))
end
def show(conn, %{"id" => _id}) do
+
render(conn, item: %EslHn.Hn.Story{})
end
defp one(%EslHn.Hn.Story{} = story) do
+10 -2
lib/esl_hn_web/api/json.ex
···
defmodule EslHnWeb.API.JSON do
def index(attrs) do
-
attrs.items
end
def show(attrs) do
-
attrs.item
end
end
···
defmodule EslHnWeb.API.JSON do
def index(attrs) do
+
Enum.map(attrs.items, &one/1)
end
def show(attrs) do
+
one(attrs.item)
+
end
+
+
defp one(%EslHn.Hn.Story{} = story) do
+
%{
+
title: story.title,
+
url: story.url,
+
score: story.score
+
}
end
end