ex-scopes-phxdev/lib/scopes_web/controllers/concept_json.ex

27 lines
521 B
Elixir

defmodule ScopesWeb.ConceptJSON do
alias Scopes.Storage.Concept
@doc """
Renders a list of concepts.
"""
def index(%{concepts: concepts}) do
%{data: for(concept <- concepts, do: data(concept))}
end
@doc """
Renders a single concept.
"""
def show(%{concept: concept}) do
%{data: data(concept)}
end
defp data(%Concept{} = concept) do
%{
id: concept.id,
domain: concept.domain,
class: concept.class,
item: concept.item,
data: concept.data
}
end
end