Packages
pow
0.1.0-alpha
1.0.39
1.0.38
1.0.37
1.0.36
1.0.35
1.0.34
1.0.33
1.0.32
1.0.31
1.0.30
1.0.29
1.0.28
1.0.27
1.0.26
1.0.25
1.0.24
1.0.23
1.0.22
1.0.21
1.0.20
1.0.19
1.0.18
1.0.17
1.0.16
1.0.15
1.0.14
1.0.13
1.0.12
1.0.11
1.0.10
1.0.9
1.0.8
1.0.7
1.0.6
1.0.5
1.0.4
1.0.3
1.0.2
1.0.1
1.0.0
1.0.0-rc.4
1.0.0-rc.3
1.0.0-rc.2
1.0.0-rc.1
1.0.0-rc.0
0.1.0-rc.1
0.1.0-alpha.8
0.1.0-alpha.7
retired
0.1.0-alpha.6
0.1.0-alpha.5
0.1.0-alpha.4
0.1.0-alpha.3
0.1.0-alpha.2
0.1.0-alpha.1
0.1.0-alpha
Robust user authentication solution
Security advisory:
This version has known vulnerabilities.
View advisories
Current section
Files
Jump to
Current section
Files
lib/pow/ecto/schema/fields.ex
defmodule Pow.Ecto.Schema.Fields do
@moduledoc """
Handles the Ecto schema fields for user.
"""
alias Pow.{Config, Ecto.Schema}
@attrs [
{:password_hash, :string},
{:current_password, :string, virtual: true},
{:password, :string, virtual: true},
{:confirm_password, :string, virtual: true},
]
@spec attrs(Config.t()) :: [tuple()]
def attrs(config) do
login_field = Schema.login_field(config)
[{login_field, :string, null: false}]
|> Enum.concat(@attrs)
end
@spec indexes(Config.t()) :: [tuple()]
def indexes(config) do
login_field = Schema.login_field(config)
[{login_field, true}]
end
end