Kommt darauf an, was Sie unter Geschäftslogik verstehen. Jede "Logik", die den Inhalten des Modells Bedeutung verleiht, sollte im Modell enthalten sein. In der verknüpften Frage scheint die Antwort mit der höchsten Bewertung "Geschäftslogik" als etwas zu definieren, das sich auf Daten bezieht. Das macht Sinn, wenn man bedenkt, dass die Daten eines Unternehmens sein Geschäft sind!
Ich habe einmal ein Beispiel von dem Schöpfer von Rails gesehen (glaube ich), der genau das tat - ohne "Geschäftslogik" in das Modell aufzunehmen. Sein Beispiel war eine Controller-Klasse und Methode für die Registrierung und Anmeldung von Apps. Ein im Klartext angegebenes Kennwort wurde verschlüsselt, bevor es in das Modell (eine Datenbank) eingefügt oder von diesem abgefragt wurde.
Ich kann mir kein besseres Beispiel für etwas vorstellen, das keine Steuerungslogik ist und direkt zum Modell gehört.
Das Modell könnte eine Schnittstelle zu unzähligen Datenspeichern sein und die Portabilität beeinträchtigen. Hier könnte man Verwirrung darüber finden, ob die Modellschnittstelle tatsächlich der "Controller" ist oder nicht.
Im Allgemeinen verknüpft der Controller das Modell und die Ansicht (die das Fleisch und die Kartoffeln der App sind). In der Cocoa-Entwicklung kann es so einfach sein, dass der Controller über die XCode-GUI (Controller-Objekte und -Bindungen) verwaltet wird.
Der GoF-Abschnitt "Design Patterns" auf MVC, lose zitiert:
Die MVC-Klassentriade wird zum Erstellen von Benutzeroberflächen in Smalltalk-80 verwendet. Das Modell ist das Anwendungsobjekt, die Ansicht die Bildschirmdarstellung und der Controller definiert, wie die Benutzeroberfläche auf Benutzereingaben reagiert. MVC entkoppelt Ansichten und Modelle, indem ein Abonnement- / Benachrichtigungsprotokoll zwischen ihnen erstellt wird. Das folgende Diagramm zeigt ein Modell und drei Ansichten. Wir haben die Controller der Einfachheit halber weggelassen.
In MVC dreht sich alles um Benutzeroberflächen. Der Fokus liegt auf dem Modell und der Ansicht - Definieren und Anzeigen von Daten. Beachten Sie das "Anmelde- / Benachrichtigungsprotokoll" - hier kommt Ihr Controller ins Spiel. Sie können alle gewünschten Ansichten erstellen. Solange sie sich an das Protokoll halten, müssen Sie niemals das Modell oder den Controller berühren.
Wenn Sie speziell von Web-Entwicklung sprechen, sind viele gängige Web-Frameworks mit dem Begriff MVC und seinen Komponentendefinitionen schnell und locker.