Enterprise-D was a Galaxy-Class starship, which was the biggest starships Federation had to date. It was build in a period where the Federation had inner wealth and prosperity. It had peace with Klingons, no contact with Romulans and neutral-peace with any other major "force" of the galaxy. Galaxy-Class starships idea was exploration in deep-space, diplomatic missions, cargo-personel carrier and science vessel without sacrificing its' military abilities. In other words it was a ship build to increase Federation's "hard" and "soft" power at the same time, using it's size and advance technologies to archive Federation's goals. Unlike the previous Enterprises it featured leasure facilities -even a bar!- and had various non-Starfleet civilians working in the ship, making it a moving city. Enterprise-D was the host of various ambassadors, VIPs -Federation and non-Federation. If you take all that into account you can see that combat wasn't the purpose of Enterprise-D (even if it excels at it), thus many starfleet personnel who were off to deep-space, months if not years away from home and wanted to have their families with them could do so without having them scarify anything. Of course there was always the danger of a hostile encounter, but thanks to vast amount of emergency pods, the sausage separation feature, the large spacedock which housed many smaller spacecrafts there were emergency escape options for civilians so they can get to safety.
Enterprise-E who -as a Sovereign-class starship- was built with military actions in mind, thus lucking the leasure facilities and it was most likely to see combat, didn't have families and children. Previous Enterprises also didn't have the equipment and facilities to support that, maybe Enterprise-C, which was an Ambassador-Class (something between Excelsior and Galaxy Classes) had similar features as Enterprise-D, but we don't know.
Hope I helped :)