如何在此函数中使用此回调消息

砂轮

我正在努力选择Twig中的上一个for循环。如果该类别具有子类别,则尝试显示该类别中的一些类别标题。如果类别没有子类别,则应显示上一个循环的标题。通常,如果任何类别的深度相同,这将不是问题。不幸的是,这些类别具有不同的深度。

所以我想做的就是创建某种为我做的功能。

因此,例如:

Category A -> Category A.sub -> Category A.subsub
 Title1        Title1.1          Title1.2
 Title1        Title1.1          Title1.2

Category B -> Category B.sub -> Category A.subsub
 Title1        Title1.1          Title1.1
 Title1        Title1.1          Title1.1   

如您所见Category B.sub.sub,没有任何子类别。如果是这种情况,则应显示中的子类别Category B.sub通常我会做这样的事情:

{% for category in shop.categories %}     
  {{ category.title }} 

  {% if category.subs %}
    {% for category in category.subs %}
      {{ category.title }}

      {% if category.subs %}
        {% for category in category.subs %}
          {{ category.title }}
        {% endfor %}
      {% endif %}  

    {% endfor %}
  {% endif %}

{% endfor %}

有什么方法可以创建某种功能来检查类别是否具有子类别。如果不是这种情况,请访问上一个循环并显示那些类别名称。

我认为这很简单:

{% elseif not category.subs %}
  {# Do this #}

但是事实并非如此:(

帕维尔·彼得罗夫(Pavel Petrov)

我的建议是在php代码中使数组的结构相同,并且不要在模板中放入这种逻辑。

因此,在php中,您会有类似以下内容:

if (!isset($categoryB['sub']['subsub']) {
    $categoryB['sub']['subsub'] = $categoryA['sub']['subsub'];
}

然后您只需对模板进行迭代:

{% for category in shop.categories %}
    {{ category.title }}
    {% for category in category.subs %}
        {{ category.title }}
        {% for category in category.subs.subsub %}
            {{ category.title }}

而且我还建议使其递归,这样您将获得以下内容:

{% itarerateCategoryes categories %}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在此函数中使用此回调消息

来自分类Dev

如何在GWT UiBinder中使用JavaScript回调函数?

来自分类Dev

如何在回调函数javascript中使用断言

来自分类Dev

如何在imagesLoaded回调函数中使用变量?

来自分类Dev

如何在Python中使用ctypes创建回调函数?

来自分类Dev

如何在GWT UiBinder中使用JavaScript回调函数?

来自分类Dev

如何在API中使用jsonp回调函数

来自分类Dev

如何在回调中使用“this”?

来自分类Dev

地理位置成功回调-如何在此回调之外使用返回的对象?

来自分类Dev

地理位置成功回调-如何在此回调之外使用返回的对象?

来自分类Dev

如何在回调函数中使Ember操作冒泡?

来自分类Dev

如何在回调中使用结构的参数化成员函数?

来自分类Dev

如何在React JS中的图像加载事件的回调中使用函数?

来自分类Dev

如何在事件回调中使用实时函数和去抖?

来自分类Dev

如何知道在 Cordova 中使用的回调函数是否相同?

来自分类Dev

如何在此代码中使用自定义函数?

来自分类Dev

如何在此代码中使用 group by 函数

来自分类Dev

如何在此函数中使用 getMinutes 而不是 getHours

来自分类Dev

如何在Meteor中使用查找和回调

来自分类Dev

如何在Gtk回调中使用C块?

来自分类Dev

如何在rails中使用`after_update'回调?

来自分类Dev

在函数上下文中使用此关键字的Java语言回调

来自分类Dev

如何在Hooks上使用状态回调函数

来自分类Dev

如何在AngularJS内使用通过回调设计的函数?

来自分类Dev

在块回调函数中使用它

来自分类Dev

如何将“此”对象传递给使用协议的函数中调用的回调函数

来自分类Dev

如何在Codeigniter中使用回调函数

来自分类Dev

如何在ReactJS Hooks中使用回调函数

来自分类Dev

如何在Codeigniter中使用回调函数

Related 相关文章

  1. 1

    如何在此函数中使用此回调消息

  2. 2

    如何在GWT UiBinder中使用JavaScript回调函数?

  3. 3

    如何在回调函数javascript中使用断言

  4. 4

    如何在imagesLoaded回调函数中使用变量?

  5. 5

    如何在Python中使用ctypes创建回调函数?

  6. 6

    如何在GWT UiBinder中使用JavaScript回调函数?

  7. 7

    如何在API中使用jsonp回调函数

  8. 8

    如何在回调中使用“this”?

  9. 9

    地理位置成功回调-如何在此回调之外使用返回的对象?

  10. 10

    地理位置成功回调-如何在此回调之外使用返回的对象?

  11. 11

    如何在回调函数中使Ember操作冒泡?

  12. 12

    如何在回调中使用结构的参数化成员函数?

  13. 13

    如何在React JS中的图像加载事件的回调中使用函数?

  14. 14

    如何在事件回调中使用实时函数和去抖?

  15. 15

    如何知道在 Cordova 中使用的回调函数是否相同?

  16. 16

    如何在此代码中使用自定义函数?

  17. 17

    如何在此代码中使用 group by 函数

  18. 18

    如何在此函数中使用 getMinutes 而不是 getHours

  19. 19

    如何在Meteor中使用查找和回调

  20. 20

    如何在Gtk回调中使用C块?

  21. 21

    如何在rails中使用`after_update'回调?

  22. 22

    在函数上下文中使用此关键字的Java语言回调

  23. 23

    如何在Hooks上使用状态回调函数

  24. 24

    如何在AngularJS内使用通过回调设计的函数?

  25. 25

    在块回调函数中使用它

  26. 26

    如何将“此”对象传递给使用协议的函数中调用的回调函数

  27. 27

    如何在Codeigniter中使用回调函数

  28. 28

    如何在ReactJS Hooks中使用回调函数

  29. 29

    如何在Codeigniter中使用回调函数

热门标签

归档