Yeah I dont think many ppl is using it, as it gets quite confusing with multi-chain and/or multivariate RVs. It is great for demonstration purpose in low dimension toy problems, a use case is something like this:
with pm.Model() as m:
mu = pm.Normal('mu', 0, 1)
sd = pm.HalfCauchy('sd', 1.5)
obs = pm.Normal('obs', mu, sd, observed=np.random.randn(10)*2.5+1)
trace = pm.sample()
pm.traceplot(trace,
combined=True,
priors=[pm.Normal.dist(0., 1), pm.HalfCauchy.dist(2.5)]);
# this is also allow
pm.traceplot(trace,
combined=True,
priors=[mu.distribution, sd.distribution]);
So yes I think what you are doing is correct at least in univariate cases.