I have a many_to_many relationship across Domains Stores and Accounts between Store and Employee.
The Join Rescue is in the Stores Domain.
Here is the definition of the Store → Employee many_to_many
has_many :employees_join_assoc, PointOfSale.Stores.StoreEmployee, public?: true
many_to_many :employees, PointOfSale.Accounts.Employee do
through PointOfSale.Stores.StoreEmployee
domain PointOfSale.Accounts
source_attribute_on_join_resource :store_id
destination_attribute_on_join_resource :employee_id
public? true
end
When trying to read the relationship via GraphQL I get the following error:
** (FunctionClauseError) no function clause matching in anonymous fn/2 in Ash.Actions.Read.Relationships.attach_related_records/2
(ash 3.0.10) lib/ash/actions/read/relationships.ex:29: anonymous fn({:__exception__, %Postgrex.Error{
message: nil,
postgres: %{
code: :undefined_table,
line: "1452",
message: "relation \"stores\" does not exist",
position: "39",
file: "parse_relation.c",
unknown: "ERROR",
severity: "ERROR",
pg_code: "42P01",
routine: "parserOpenTable"
},
connection_id: 46035,
query: "SELECT DISTINCT s0.\"id\", s1.\"id\" FROM \"stores\" AS s0 INNER JOIN LATERAL (SELECT se0.\"id\" AS \"id\" FROM \"dreambean\".\"employees\" AS se0 INNER JOIN \"dreambean\".\"store_employees\" AS ss1 ON ss1.\"employee_id\" = se0.\"id\" WHERE (ss1.\"store_id\" = s0.\"id\")) AS s1 ON TRUE WHERE (s0.\"id\" = ANY($1))"
}, [
The join resource:
relationships do
belongs_to :store, PointOfSale.Stores.Store do
primary_key? true
allow_nil? false
public? true
end
belongs_to :employee, PointOfSale.Accounts.Employee do
domain PointOfSale.Accounts
primary_key? true
allow_nil? false
public? true
end
end






















