Тогда что бы помешало ему стать
толстый и вызовите напрямую методы модели
не спрашивая контроллер? не спрашивая контроллер?
Я нашел это немного смешным. У представлений нет собственного разума, но у программистов есть. Именно они принимают неверные решения и дают View разрешать делать то, что он делает.
Вид должен знать достаточно о модели, чтобы иметь возможность отображать. Если ваши программисты не могут контролировать себя, один из возможных ответов - сделать объекты Model неизменяемыми.
Другим может быть использование AOP. Напишите аспект, который предотвращает вызовы на уровень служб, которые не поступают ни от других служб, ни от контроллеров.
Есть еще одна точка зрения: AJAX - это все о том, что Views берет вещи в свои руки и звонит в сервисы, без чьего-либо разрешения, чтобы делать вещи асинхронно и улучшать скорость отклика для лучшего взаимодействия с пользователем. Это хорошо вещь.
Не слишком зацикливайтесь на архитектурной чистоте. MVC - это прекрасный шаблон, и очень полезный, когда он применяется. Знать правила; знать, когда уместно нарушать правила. Не будь таким догматичным - в программировании или в жизни.