Is there a way to do left outer joins in Datamapper without having to resort to talking to the data-store directly. I've been searching the net and the Datamapper docu with not success on details how to do so.
Asked
Active
Viewed 228 times
1 Answers
0
It appears a strict left outer joins is quite difficult.
Looking at the site:
68 # QueryPaths can be used to construct joins in a very declarative manner.
69 #
70 # Starting from a root model, you can call any relationship by its name.
71 # The returned object again responds to all property and relationship names
72 # that are defined in the relationship's target model.
73 #
74 # This means that you can walk the chain of available relationships, and then
75 # match against a property at the end of that chain. The object returned by
76 # the last call to a property name also responds to all the comparison
77 # operators available in traditional queries. This makes for some powerful
78 # join construction!
79 #
80 Customer.all(Customer.orders.order_lines.item.sku.like => "%BLUE%")
Looking at the docs it looks like the Query class has a relationship handler that is aware of foreign keys.

Chase
- 2,748
- 2
- 23
- 32