View Source Getting Started
Authentication
You can click here to generate a new auth-key.
Installation
Add DBVisor to your hex repos:
Local
mix hex.repo add db_visor https://dbvisor.com \
--fetch-public-key SHA256:PDVAHxqZx9mhFZ6lM/kmJGl1o6SQrfUDEVqMiRZ1DLs \
--auth-key DBVISOR_AUTH_KEYCI
- name: Installing DBVisor hex repo
run: |
mix hex.repo add db_visor https://dbvisor.com \
--fetch-public-key SHA256:PDVAHxqZx9mhFZ6lM/kmJGl1o6SQrfUDEVqMiRZ1DLs \
--auth-key ${{secrets.dbvisor_auth_key}}Add DBVisor to your mix.exs:
def deps do
[
{:db_visor, "~> 0.3.2", repo: :db_visor}
]
endAdd DBVisor in your router:
scope "/" do
pipe_through [DBVisor.Hint]
live "/", DBVisor.Live
endConfiguration
The following option can be configured:
:auth_keyconfigures the authentication key, used to retrieve:db_visor, defaults to:nil.:editorconfigures the editor, e.g.code://__FILE__:__LINE__. defaults to:nil.:github_tokenconfigures the token used to resolved dependencies for the interactive stacktrace. defaults to:nil.:permit?configures the MFA used to controldelete,insert,updateor if a field is queryable, the function will always receivechangeset_or_query,socketorchangeset_or_struct,field,socket. defaults to:{DBVisor, :permit?, []}.
Filtering
Filter is done via query params, the following operators are available: in, nin, eq, neq, between, lt, gt, lte, gte, like, ilike.
Example
iex> Plug.Conn.Query.encode(%{"filter" => %{"0" => %{"id" => %{"in" => ["1", "2", "3"]}}}})
"filter[0][id][in][]=1&filter[0][id][in][]=2&filter[0][id][in][]=3"
iex> Plug.Conn.Query.encode(%{"filter" => %{"apply" => "and", "0" => %{"id" => %{"in" => ["1", "2", "3"]}}}})
"filter[0][id][in][]=1&filter[0][id][in][]=2&filter[0][id][in][]=3&filter[apply]=and"Ordering
Any field can be order by asc or desc.
Example
iex> Plug.Conn.Query.encode(%{"asc" => "email"})
"asc=email"