I’m trying to filter an ash resource based on an embedded resource. Eg. Post → User (embedded). On AshJsonApi i’m filtering like so filter[post][user][some_field]=some_id but getting an Invalid reference error.
I tried creating a custom preparation below to take advantage of the custom filter but its still returning the same error.
prepare fn query, _ ->
case Ash.Changeset.get_argument(query, :filter) do
%{"user" => user} ->
member_id = user["member_id"]
Ash.Query.filter(
query,
post.user.member_id == ^member_id
)
_ ->
query
end
Not sure how ash filters are supposed to work with embedded resources and any pointers here would help.






















