2010-03-26 19 views
24

Tôi bắt đầu phát triển một ứng dụng nhỏ trên ruby ​​trên đường ray và nhiều câu hỏi nảy sinh. Tôi nên nói rằng tôi có khoảng 1 năm kinh nghiệm với ASP.NET MVC và cảm thấy như ở nhà với các kiểu xem và bộ điều khiển. Tôi đã sử dụng các mô hình xem rộng rãi (với sự giúp đỡ của AutoMapper) và bây giờ tự hỏi nếu các mô hình xem được sử dụng tương tự trong trại đường ray.Các kiểu xem có được sử dụng trong đường ray không?

Từ các ví dụ khác nhau (đường ray phôi chủ yếu) Tôi đã thu thập rằng việc kết hợp dữ liệu từ nhiều mô hình ngay trong chế độ xem của bạn (được viết bằng ASP.NET MVC) hoặc sử dụng thuộc tính ảo trên mô hình để lấy dữ liệu "bị thiếu".

Tôi biết rằng mô hình kinh doanh không nên được mô hình hóa sau nhu cầu giao diện người dùng, ví dụ như không nên là thuộc tính 'xác nhận mật khẩu' trong mô hình của bạn, đây phải là thuộc tính mô hình chế độ xem.

Thuộc tính ảo của Rails dường như vi phạm nguyên tắc này.

Làm thế nào nó được thực hiện trong đường ray?

Cảm ơn.

+0

ASP .NET MVC không có khái niệm về nhiều mô hình giả ở chỗ chúng thường chỉ bao bọc nhiều mô hình trong một đối tượng duy nhất mà bạn tự viết. – Kezzer

Trả lời

16

Nếu tôi hiểu khái niệm của Mô hình xem chính xác, đó là khái niệm không rõ ràng ngay trong Rails, nhưng không bị cấm/cau mày hoặc không được phép. Không có yêu cầu cụ thể nào cho việc ánh xạ một mô hình hoàn hảo tới các bảng, do đó bạn tự do làm việc ở mức trừu tượng phù hợp. Tôi không nghĩ rằng việc tham chiếu nhiều mô hình trong một chế độ xem được coi là đặc biệt xấu (nếu có, thì tôi có một số lĩnh vực cần sửa đổi một chút) mặc dù việc cập nhật nhiều mô hình từ một chế độ xem có thể hơi phức tạp một chút.

Dù sao, trong Rails tôi nghĩ chúng ta đang nói về những gì dường như chủ yếu được gọi là mẫu "Presenter". Một số tài liệu tham khảo (Google "Rails Presenter mẫu" cho nhiều hơn bạn có thể muốn hoặc cần):

Các vấn đề liên quan