subgrounds icon indicating copy to clipboard operation
subgrounds copied to clipboard

Immediate single entity query

Open 0xMochan opened this issue 2 years ago • 0 comments

Is your feature request related to a problem? Please describe. Subgrounds should allow developers to query a single entity from an id. The query (and returned object) should only have scalar, non-list values.

For nested fields returning non-scalar (i.e.: other entities) or list values, they should be queried at read time.

Describe the solution you'd like

sg = Subgrounds()
uniswapV2 = sg.load_subgraph('https://api.thegraph.com/subgraphs/name/uniswap/uniswap-v2')

# Fetch the pair and all its non-list scalar values with the id '0xb4e16d0168e52d35cacd2c6185b44281ec28c9dc' 
some_pair = uniswapV2.Pair('0xb4e16d0168e52d35cacd2c6185b44281ec28c9dc')

# Since txCount is a non-list scalar, the field's value would be prefetched 
# and reading it would not send a new query 
num_tx = some_pair.txCount

# Since token0 is not a scalar value, then it would be fetched at read 
# time and reading it would imply sengin a new query (all handled in the background)
token0_symbol = some_pair.token0.symbol

Originally from: cvauclair

0xMochan avatar Mar 03 '23 22:03 0xMochan