Tôi đã đọc cuốn sách "SQL Antipatterns: Tránh những cạm bẫy của lập trình cơ sở dữ liệu" đặc biệt là xung quanh các hạt đậu thần chống mẫu. Trong nó cho thấy một biểu đồ tách các trình phân phối bằng cách sử dụng một mô hình miền và có ví dụ trong PHP, nhưng không phải là Rails, nó đề cập đến điều này như là sự tổng hợp HAS-A giữa các mô hình miền và khung nhìn/bộ điều khiển và thành phần HAS-A giữa các mô hình miền và các bộ chuyển đổi (I giả sử đây là UML nói). Trong Rails nó có vẻ là nơi phổ biến để làm cho các mô hình chất béo bộ điều khiển mỏng bằng cách sử dụng phương pháp mô hình, các phương pháp này có thể thao tác các mô hình liên quan khác để chỉ có một mô hình có thể được sử dụng trong bất kỳ bộ điều khiển nhất định. Tuy nhiên, tôi tự hỏi nếu có một thực tế trong đó bao gồm tổng tách trong Rails?Rails Domain mô hình tách Activerecord
Tức là, để tạo mô hình không hoạt động hoặc lớp khác được sử dụng làm mô hình miền hoạt động như một lớp giữa bộ điều khiển và đối tượng activerecord (do đó các bản đồ được ánh xạ tới bảng) cần phải biết bất cứ điều gì về cơ sở dữ liệu bên dưới và cấu trúc của nó. Nó cũng cung cấp cho các tùy chọn để di chuyển ra khỏi các phương pháp CRUD mà không giải thích các yêu cầu ứng dụng mà họ áp dụng, một lời chỉ trích trong cuốn sách.
Cảm ơn điều này đã chỉ cho tôi theo hướng của luồng stackoverflow này http://stackoverflow.com/questions/2521522/are-view-models-used-in-rails và sau đó lần lượt Jay Fields đã thực hiện một số công việc trên các trình bày pattens trình bày tại RailsConfEU 07 http://blog.jayfields.com/2007/09/railsconf-europe-07-presenter-links.html –
... Tôi nghĩ rằng nó là một quăng lên giữa một mô hình trình bày hoặc di chuyển các sáng tạo liên quan và logic khác với mô hình Jamis Bucks quay trên mô hình chất béo điều khiển mỏng mà dường như là tiêu chuẩn trong thế giới đường ray. Tôi thực sự thích mẫu trình bày hơn, tôi nghĩ rằng nó có thể tạo ra mã sạch hơn. Tôi cũng thấy rằng có một cuốn sách "Advanced Rails Recipes" có chứa Jay Fields thực hiện các mẫu trình bày, tôi sẽ xem liệu tôi có thể tìm và mượn một bản sao từ thư viện hay không. Tôi hy vọng rằng ai đó đã mở rộng các máy phát điện Rails dựa trên công việc này. –