Bạn sẽ liệt kê ra các mô-đun đã được bao gồm trong một lớp cụ thể trong phân cấp lớp trong Ruby như thế nào? Một cái gì đó như thế này:Làm cách nào để liệt kê các Mô-đun trong Lớp học Ruby?
module SomeModule
end
class ParentModel < Object
include SomeModule
end
class ChildModel < ParentModel
end
p ChildModel.included_modules #=> [SomeModule]
p ChildModel.included_modules(false) #=> []
Niêm yết tổ tiên làm cho các mô-đun xuất hiện cao hơn trong cây:
p ChildModel.ancestors #=> [ChildModel, ParentModel, SomeModule, Object, Kernel]
Tôi không phải là poster gốc, nhưng Tôi nghĩ rằng tôi có thể trả lời câu hỏi của bạn lại: đối số boolean. Lance đang mong đợi phương thức '.included_modules' này hoạt động như' # methods', '# public_methods' và các phương thức tương tự khác làm trong Ruby. Trên đó, một giá trị 'true' có nghĩa là" chỉ cho tôi các phương thức mà đối tượng này nhận được từ lớp của nó Ở BỔ SUNG CHO những cái mà nó nhận được từ các lớp tổ tiên của nó và các mô-đun bao gồm ". Giá trị sai không trả lại các phương thức bổ sung này. – pablobm