Models, not controllers, trigger view updates