I don't know. Weaver looked good in limited starts in 2017 but was not good at all this past season. If I'm St. Louis, I make this trade every time. I guarantee you the Cubs and Brewers are not happy hearing about this trade. I would bet the Dodgers, Giants and Rockies are happy with it.
The Cubs and Brewers are not happy based on the 2019 season.
Goldschmidt is of course an upgrade for 2019 but then he becomes a FA and STL would have to overpay to keep a 32 year old 1B. STL gave up a bunch for a one year rental.
If we're basing it entirely on one season, it's a big win for STL. If we look long term, Arizona wins the trade based on current expectations and the fact that they weren't going to be able to afford to keep Goldschmidt. Weaver is 25, has significant potential, and will be under team control for six seasons.
Oh, and Arizona also got two more prospects and a draft pick.
This is similar to the Amari Cooper trade in that I'm surprised Arizona got this much for someone leaving anyway. In both cases, the contending team got the immediate boost but gave up more than I'd expect in future assets.
I guess what I can say for the Cards is at least they made the trade now rather than giving up a similar haul in July.