Tôi có một loạt các bộ điều khiển với các phương thức hiển thị chế độ xem chỉ mục. Điều này dẫn đến việc tôi viết render :index
vào cuối phần lớn các phương pháp. Dưới đây là ví dụLàm cách nào tôi có thể DÙNG tất cả các cuộc gọi này để hiển thị: chỉ mục?
def index
@models = Model.find(:all)
end
def new_models
@models = Model.find_by_new(true)
render :index
end
def old_models
@models = Model.find_by_new(false)
render :index
end
Lý tưởng nhất, tôi sẽ chỉ chuyển mã kết xuất vào bộ lọc sau, trước khi chuyển sang bộ lọc sau không phải là tùy chọn.
Tôi có một số lượng lớn bộ điều khiển như thế này nên giải pháp sẽ loại bỏ nhiều mã lặp lại.
Ứng dụng này hiện vẫn là Rails 2.3, tuy nhiên, ứng dụng này sẽ được nâng cấp lên Rails 3 trong tháng tới hoặc hai. Vì vậy, trong khi tôi muốn một kỹ thuật hoạt động trên 2,3, Rails 3 chỉ có các giải pháp vẫn sẽ được đánh giá cao.
chỉ cần một lưu ý, cố gắng tránh connascence ý nghĩa càng nhiều càng tốt. (tôi chỉ * đã * để sử dụng 'từ' đó ngày, bởi vì tôi vừa học về sự kết nối **: D **) Xem http://scotland-on-rails.s3.amazonaws.com/1A03_JimWeirich-SOR.mp4 nếu quan tâm – Zabba
Đó là một cuộc nói chuyện rất hay. Cảm ơn bạn đã chia sẻ nó. Ví dụ của tôi không phải là bất kỳ mã nào tôi đã thực sự viết. Tôi đã chỉ đưa ra mã ngẫu nhiên mà không có nhiều mặc dù cho ví dụ. Tôi rất vui vì tôi đã làm điều đó như vậy, nếu không tôi có thể chưa bao giờ học về sự kết nối :-) –