Packages
An Elixir library that converts keys in maps between `snake_case` and `camel_case`. Useful as a plug in Phoenix for converting incoming params from JavaScript's `camelCase` to Elixir's `snake_case`
Current section
Files
Jump to
Current section
Files
lib/plug/snake_case_params.ex
defmodule ProperCase.Plug.SnakeCaseParams do
@moduledoc """
A helpful plug that converts your incoming parameters to
Elixir's `snake_case`
Plug it into your `router.ex` connection pipeline like so:
pipeline :api do
plug :accepts, ["json"]
plug ProperCase.Plug.SnakeCaseParams
end
Enjoy :)
"""
def init(opts), do: opts
def call(%{params: params} = conn, _opts) do
%{conn | params: ProperCase.to_snake_case(params)}
end
end