Can you perform aggregations or joins with falcor?

Often a client needs aggregations or joins over the data. How would you handle that in falcor? I don't see any notion of transform or join in the docs. Perhaps with call? It is introduced as a way of executing side effects, but perhaps could also perform transforms or joins.

However, it seems you'd then have to embed functions throughout your graph for every aggregation you might need.

Update:

For example, return the mean of a property, like

select avg(x) from foo

or the mean, grouped by another property

select g, avg(x) from foo group-by g

Answers


What kind of aggregations and joins do you mean? They are mostly solved by references.

For example, this SQL:

SELECT Customers.CustomerName, Orders.OrderID, Orders.SomeOrderStuff
FROM Customers
LEFT JOIN Orders ON Customers.CustomerID = Orders.CustomerID;

Translates roughly to:

model.get(
    ['customers', {from: 0, to: 100}, 'orders', {from: 0, to: 100}, ['id', 'someOrderStuff']
).then(function(response) {
    // do stuff
});

in the model (client-side). Server-side, you need to implement routes that return $refs.

(Tell me if you need a more detailed explanation.)


Need Your Help

Apache BaseNCodec how to encode string

java apache encoding

I need to encode some strings in my Java program using BaseN encoding (similar to Base64, but we want to use different base for encoding for different strings) and I found that it could be possible...

NodeJS: My node files have dependencies on variables in an other file

javascript node.js express dependencies

I am creating an app with nodejs. In the app, I have a app.js script that is the entrypoint that initializes both the app, as an expressjs app, and the http server that I use.