Create admin interfaces for Ecto Schemas in Phoenix apps
Based on blog post here
If available in Hex, the package can be installed
by adding adminable to your list of dependencies in mix.exs:
def deps do
[
{:adminable, "~> 0.1.0"}
]
endDocumentation can be generated with ExDoc and published on HexDocs. Once published, the docs can be found at https://hexdocs.pm/adminable.
-
Add
use Adminableto your Ecto Schemadefmodule MyApp.User do use Ecto.Schema import Ecto.{Query, Changeset}, warn: false use Adminable ... end
-
optionally implement fields/0, create_changeset/2 and edit_changeset/2
-
Forward to
Adminable.Router
scope "/admin" do
pipe_through [:browser, :my, :other, :pipelines]
forward("/", Adminable.Plug, [
otp_app: :my_app,
repo: MyApp.Repo,
schemas: [MyApp.User]
layout: {MyAppWeb.LayoutView, "app.html"}
])
end