mirror of
https://github.com/ash-project/ash_phoenix.git
synced 2024-09-20 07:12:49 +12:00
fix: the API is defined on the form, not on the form.source (#131)
This commit is contained in:
parent
8ccbed8f06
commit
3726d07ee2
1 changed files with 6 additions and 4 deletions
|
@ -637,7 +637,7 @@ defmodule AshPhoenix.Form do
|
|||
end
|
||||
|
||||
def can_submit?(form) do
|
||||
unless form.source.api do
|
||||
unless form.api do
|
||||
raise """
|
||||
No Api configured, but one is required to check authorization to submit a form.
|
||||
|
||||
|
@ -647,7 +647,7 @@ defmodule AshPhoenix.Form do
|
|||
"""
|
||||
end
|
||||
|
||||
form.source.api.can?(form.source, form.source.context[:private][:actor])
|
||||
form.api.can?(form.source, form.source.context[:private][:actor])
|
||||
end
|
||||
|
||||
@spec ensure_can_submit!(t()) :: t()
|
||||
|
@ -657,7 +657,7 @@ defmodule AshPhoenix.Form do
|
|||
end
|
||||
|
||||
def ensure_can_submit!(form) do
|
||||
unless form.source.api do
|
||||
unless form.api do
|
||||
raise """
|
||||
No Api configured, but one is required to check authorization to submit a form.
|
||||
|
||||
|
@ -667,7 +667,9 @@ defmodule AshPhoenix.Form do
|
|||
"""
|
||||
end
|
||||
|
||||
case form.source.api.can(form.source, form.source.context[:private][:actor]) do
|
||||
case form.api.can(form.source, form.source.context[:private][:actor],
|
||||
return_forbidden_error?: true
|
||||
) do
|
||||
{:ok, false, %{stacktrace: %{stacktrace: stacktrace}} = exception} ->
|
||||
reraise exception, stacktrace
|
||||
|
||||
|
|
Loading…
Reference in a new issue