Khi tôi phát triển kỹ năng RoR của mình với một số hướng dẫn cơ bản, tôi gặp phải sự cố. Những gì tôi đang cố gắng đạt được là có nhận xét thuộc về bài đăng, không có chỉ mục riêng hoặc chế độ xem riêng lẻ. Phần này rất dễ.Định tuyến đoạn mã định tuyến và URI
Đây là vấn đề khó khăn. Tôi muốn post_comment_url
để trả lại địa chỉ với fragment identifier: http://example.com/posts/2#comment-4
. Nó sẽ cho phép tôi sử dụng redirect_to
ở dạng đơn giản nhất, không có tham số :anchor
(có thể chống lại cách ruby để giữ mọi thứ đơn giản).
Làm cách nào để thực hiện điều đó?
Có lẽ đây là giải pháp tốt, nhưng tôi không thích ý tưởng về trình bao bọc này vì nó sẽ phá vỡ quy ước sử dụng phương thức post_comment_url gốc. Tôi cũng lưu ý, rằng tôi sẽ cần một người trợ giúp khác cho post_comment_path. Vì nó là giải pháp làm việc, tôi không nghĩ rằng nó đủ khô. – samuil
Bất chấp quy ước Rails đối với post_comment_url bằng cách trả về url bài đăng với neo nhận xét có xu hướng dẫn đến nhức đầu lớn hơn cần phải chuyển tùy chọn: anchor mọi lúc (điều tôi thực sự nói là cách tốt hơn, vì nó mô tả ý định rõ ràng hơn .) Tôi cũng cảnh báo việc sử dụng DRY làm lý do để làm hầu hết mọi thứ. Thuật ngữ DRY giống như từ Agile: nó mô tả một tập hợp các nguyên tắc và thực tiễn, nó hầu như không có nghĩa gì cả. – nakajima
DRY không phải là tập hợp các nguyên tắc bí ẩn. Nó chỉ có nghĩa là: mọi thông tin sẽ chỉ xuất hiện một lần trong mã, và thiết kế nên làm cho nó rõ ràng ở đâu. Nếu không có giải pháp nào tốt hơn helper (tôi vẫn còn khá mới với Rails, vì vậy không thể nói gì cả nếu nó dễ thực hiện giải pháp bằng cách thay đổi một số phương thức mặc định và xem xét nó thông minh) Tôi tin rằng nó sẽ được chứa trong một số phiên bản Rails tương lai. – samuil