There was inconsistency in qvariant type of submodels depending if it
was initial call for a given row (creating proxy) or further calls
(returning cached object). It led to subtle issues in views - view was
reporting type errors and failing assigning submodels properly when used
with submodel proxy with already initialized and cached proxy submodels.
Closes: #14507
So far submodel's proxies were created on the fly, on every data(...)
call. Now, once created the proxy is persistent and reused whenever
needed.
Closes: #14389