我一直在努力解决这个问题但是没有任何解决方案,所以你能帮助我吗? 这是问题描述: 该程序应该能够显示给定的面包屑踪迹 类别/子类别。 例如: 输入:公共关系 产出:商业&财务>>广告与广告营销>>公共关系。
Here Business&金融是主要类别,广告和营销是其子类别,公共关系是Adv& amp;的子类别。销售。
我考虑过使用递归来实现它,但我不太清楚如何做到这一点。
谢谢, 麦
答案 0 :(得分:0)
假设它是纯Ruby,你可以这样做:
class Category
def initialize name, parent = nil
@name = name
@parent = parent
end
def display
@parent ? "#{@parent.display} >> #{@name}" : name
end
def name
@name
end
end
并像这样使用
1.9.2p320 :046 > c = Category.new "Parent"
=> #<Category:0x000001009c46d0 @name="Parent", @parent=nil>
1.9.2p320 :047 > sub = Category.new "Sub", c
=> #<Category:0x000001009bf860 @name="Sub", @parent=#<Category:0x000001009c46d0 @name="Parent", @parent=nil>>
1.9.2p320 :048 > sub.display
=> "Parent >> Sub"