ST. LOUIS -- St. Louis Cardinals shortstop Aledmys Diaz missed three games this week after he fouled a ball off home plate and off his right eyebrow in Kansas City, but his vision checked out just fine when doctors put him through all the tests back home.

Manager Mike Matheny felt comfortable putting Diaz back out there again Friday despite a nasty bruise all around his eye and a sizable blood spot in it.

A few days of rest would come in handy as Diaz had one of the busiest nights of his professional life on Friday. That’s because Jaime Garcia was on the mound with a sinker that darted and dove all night and a curveball Matheny described as “freakish,” bedeviling the Milwaukee Brewers.

“He played that game with one eye, just holding back,” Garcia joked. “But that was huge for us.”

Aledmys Diaz's solid play at shortstop helped the Cardinals break a seven-game home losing skid on Friday night. Jeff Curry/USA TODAY Sports

The synergy of a ground-ball pitcher in sync and a good-fielding shortstop helped the Cardinals break their home hex with a 7-1 win over the Brewers. Diaz fielded nine balls he turned into outs, including a difficult double play in the seventh inning and an easier one in the eighth.

Diaz’s first two months in the major leagues featured two diverging narratives, one of an unheralded prospect who batted better than .500 in his first 50 plate appearances, the other of a shortstop who couldn’t adapt to the speed things move on a major league infield. Diaz made nine errors in his first 31 games. He has made five in his past 38, but that doesn’t adequately capture the uptick in his fielding performance.

Diaz said his work with Cardinals' coaches, hours before game time, has allowed him to position himself better before pitches are made and to read swings to anticipate where the ball will be headed.

“I’m happy to hear people talking about his defense, because it was such a topic of conversation early in the year. He just continues to improve,” Matheny said. “You can just tell how comfortable ... He’s making plays, he’s letting it go, he’s charging balls.”

Garcia (6-6) had the luxury of a big lead by the middle innings, and he had his best outing in nearly two months, holding Milwaukee to a run on four hits through eight innings. He got 16 outs on the ground, six via strikeout, and just one in the air, which is pretty much the definition of what he’s trying to do. There was one other fly ball, a massive Chris Carter home run to center field, but Garcia otherwise forced Milwaukee’s hitters to pound balls into the dirt and grass.

It didn’t get any better for the Brewers when reliever Matt Bowman came into the game. Like many Cardinals pitchers, Bowman relies on a sinker, and all three of his outs were on the ground. The Cardinals' outfielders could practically lie down on the job. Only one of them, Brandon Moss, actually had to make a catch.

“I was very busy today, but it was a good game for us,” Diaz said.

The win snapped the Cardinals’ seven-game losing streak at home.

The Cardinals have played their most middling, sometimes-maddening baseball at home. The home hex culminated in a truly ugly performance Thursday night, replete with missed opportunities and timely errors. Finally, Matheny just erupted. His target was umpire Mike Everitt, though he all but admitted the on-field display was aimed at pumping some life into his struggling team.

Maybe it did, or maybe the Cardinals just welcomed the sight of one of their favorite opponents, a team they have gone 18-8 against the past two seasons. In seven starts over the past two seasons, Garcia is 5-2 with a 1.61 ERA versus the Brewers.

Diaz also showed no residue of the trauma while at the plate, ripping an RBI double into the left-field corner in the first inning, one of his three times reaching base safely.

The Cardinals figure to get just one or two berths to the All-Star Game. Aside from Diaz, the only particularly deserving candidate is Matt Carpenter, who continues to lead the National League in OPS. Carpenter had a pair of hits, scoring the first run on Diaz’s double and singling home another run in the fourth.

The primary difference between this series and the three previous home series that the Cardinals lost was the opponent. The Brewers aren’t very good. The turning point of the Cardinals’ five-run fourth inning was pitcher Matt Garza inexplicably rushing a throw to first and flipping it errantly to first baseman Carter.