Tôi đập đầu lên tường về những gì tôi nghĩ sẽ là một vấn đề rất đơn giản để giải quyết trong Grails:Grails - Sắp xếp danh sách đầu ra mà không cần phải có một mô hình SortedSet hoặc Comparable?
Giả sử tôi có mô hình mua sắm giống như giỏ hàng; do đó, một Giỏ hàng có nhiều mục và mỗi mục thuộc về giỏ hàng. Nói chung, tôi không quan tâm đến thứ tự của các mặt hàng trong giỏ hàng - Tôi không quan tâm thứ tự chúng được lưu trữ, được tính toán, v.v. THẾ NÀO, tôi muốn HIỂN THỊ chúng theo cùng một thứ tự. Dường như với tôi rằng logic này sẽ có thể tồn tại ENTIRELY trong lớp xem, nhưng các giải pháp duy nhất tôi đã có thể tìm thấy cho tôi biết để khai báo các mục như một SortedSet trong lớp mô hình. Điều này cũng ảnh hưởng đến lớp điều khiển của tôi, vì các thao tác Danh sách đơn giản như .collect {} giờ yêu cầu thêm cú pháp nhảy xung quanh để giữ cho kiểu chuyển đổi đúng và duy trì việc sắp xếp của tôi.
Với tôi, đây là loại hạt, vì vậy tôi phải thiếu một cái gì đó đơn giản! Có cách nào, ví dụ, để làm một cái gì đó như <g:each in="${cart.items.sort{it.name}}">
hoặc một cái gì đó tương tự, để tôi có thể thực thi một lệnh hiển thị nhất quán ONLY ở đầu ra/xem lớp? EDIT - Xem câu trả lời của Matt dưới đây; một phiên bản này thực sự hoạt động.
Cảm ơn bạn đã đưa ra lời khuyên hoặc gợi ý!
Điều đó thật tuyệt. Cuối cùng tôi đã vấp phải một giải pháp tương tự dọc theo các dòng tương tự bằng cách sử dụng một ProxyGenerator và giao diện Comparator, nhưng của bạn là sạch hơn nhiều, và chắc chắn là loại giải pháp mà tôi đang tìm kiếm. cảm ơn! – bprotas