Rails"祖先宝石"和" Acts-as-taggable-on":" has_children?"使用" tagged_with"的方法

时间:2015-05-07 09:42:16

标签: ruby-on-rails ruby ruby-on-rails-4 acts-as-taggable-on ancestry

我正在使用" Ancestry" " Acts作为" 宝石上的标记。 我想知道如何搜索Ancestry的节点是否有许多带有某些标签的孩子。

让我们举例(型号:硬件)菜单:

Father
  -> Children (Here there are many "tablets" for the model hardware) 
  -> Children (Here there are many "smartphone" for the model hardware)
  -> Children (Here there are... and so on...)
  -> Children
        -> ChildrenTwo (Here there are many "mousepad" for the model hardware, ancestry children of the parent)

现在,每个"产品"在每个硬件的菜单中都有一个或多个标签,其中" Acts可以作为标记在"。

我想知道并在菜单html中写下每个祖先级别至少有一个产品至少有一个标签。

如果是,请为该祖先级别的每件产品创建一个具有标签DISTINCT名称的每个祖先的子女。

我知道我的语言更糟糕。但我认为这是一个很棒的功能,因为它具有智能和动态。

为了创建菜单我使用此代码,现在只适用于祖先宝石,我不知道如何将其与act-as-taggable-on集成。

 <% collection.arrange(:order => :name).each do |category, sub_item| %>
  <li>
    <% if category.has_children? %><%= link_to category.name, '#' %><% else %><%= link_to category.name, category_path(category.name) %><% end %>

    <% if category.has_children? %>
      <ul><%= render partial: "category", locals: { collection: category.children } %></ul>
    <% end %>

  </li>
<% end %>

0 个答案:

没有答案