-
Notifications
You must be signed in to change notification settings - Fork 175
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Improve API for "fetch" methods #510
Comments
Note that recursively embedded associations don't even fallback to loading from the cache, which makes the API even more confusing. That also means that if we introduced |
The fetch methods (e.g.
fetch_#{association_name}
) for loading or accessing an already loaded cached record(s) seems inappropriate becauseProblem 1 seems like it came from the
fetch
method name being taken fromRails.cache.fetch
, but thecache
context has since been lost. This problem could be avoided by prefixing fetch methods withcache_
(e.g.cache_fetch_#{association_name}
), wherealias_method
could be used for backwards compatibility.Problem 2 would benefit from having an alternative method that raises instead of lazily loading when the data isn't already loaded (e.g.
cacheable_#{association_name}
). This alternative method should be used if the data is expected to already be loaded so that it can be used in a loop. Note that the accessed value may not have come from the cache or acache_fetch_*
method, given the Active Record association fallback (hence the suggestedcacheable_
prefix).The text was updated successfully, but these errors were encountered: