The common wisdom is correct - that beneficial bacteria break down the toxic parts of waste and that the fish can live with higher levels of nitrates and other persistent wastes in their tank. However, it's bad for them to have too much of those persistent wastes, so we do water changes.
The amount and frequency of water change that has to be performed depends on SOOOOOOO many factors, including hardiness of fish, amount and frequency of feeding, volume of water, etc.
Play around with this calculator:
http://www.theaquatools.com/water-changes-calculator
You'll notice that infrequent, large percentage water changes are most efficient. It gives you a graph of what your waste levels will look like over time, as regular water changes are performed.
So, the simple truth is that fish can live in water with SOME level of nitrates or other persistent wastes, it's just not good for them to be in high concentrations of it. The air in your home likely has 1-15ppm carbon monoxide in it. If it went up to 150ppm, you'd likely be dead.
Every aquarium needs a different amount of water change based on feeding. It's up to YOU to check your nitrate levels (a good indication of persistent wastes in the aquarium) and decide where you want them to be.