Đường giữa bộ điều khiển và mô hình thực sự khá rõ ràng.
Mô hình là trái tim của ứng dụng của bạn. Nó chứa logic nghiệp vụ/miền cần thiết để giải quyết vấn đề mà ứng dụng của bạn đã được viết. Mô hình thường được xếp thành nhiều lớp khác, ví dụ: kiên trì, dịch vụ, tên miền, v.v. Đó là một quan niệm sai lầm phổ biến rằng Mô hình chỉ là cơ sở dữ liệu, nhiều như nó là một quan niệm sai lầm phổ biến rằng cơ sở dữ liệu phải là một ActiveRecord.
Bộ điều khiển (và chế độ xem) là một phần của lớp trình bày. Trách nhiệm duy nhất của một bộ điều khiển là nhận và xử lý đầu vào của người dùng hướng tới ứng dụng của bạn và ủy quyền điều này cho các phần thích hợp trong mô hình. Chỉ có bấy nhiêu thôi. Nó không nên xử lý luồng ứng dụng phức tạp hoặc mã của miền vấn đề của bạn. You want controllers to be skinny and models fat with logic. Model không nên biết về một trong hai C hoặc V và bạn sẽ có thể trao đổi trên V và C cho một lớp trình bày khác nhau mà không cần phải chạm vào M. bạn
Xem MVC Excerpt in Patterns of Enterprise Application Architecture
thể dup? http://stackoverflow.com/questions/467113/fat-models-skinny-controllers-and-the-mvc-design-pattern –