1
0
mirror of https://github.com/mgerb/classic-wow-forums synced 2026-01-10 09:02:50 +00:00
Files
classic-wow-forums/lib/myapp_web/controllers/page_controller.ex

23 lines
481 B
Elixir

defmodule MyAppWeb.PageController do
use MyAppWeb, :controller
# serve index.html - cache the file after reading it to minimize IO
@spec index(map, map) :: any
def index(conn, _params) do
file = Cachex.get(:myapp, "index.html")
|> get_file
conn
|> html(file)
end
defp get_file({:ok, data}), do: data
defp get_file({:missing, _}) do
file = File.read!("./priv/static/index.html")
Cachex.set(:myapp, "index.html", file)
file
end
end