html - jekyll:尝试从 _data/products.yml 输出产品数组时出错
问题描述
我正在尝试products.yml
使用 _data 目录中的for loop
jekyll构建产品列表,以便最终结果如下所示:使用 handlebars.js 构建的示例
首先,我编写了一个 YAML 文件,_data/products.yml
其中包含一个按类别划分的产品列表
---
categories:
- Baking Products:
- name: Vegetable oil
- name: Vinegar
- ...
- Dairy Products:
- name: Cream Cheese
- name: Cottage Cheese
- ...
- Other Products:
- name: Peanut butter
- name: Chocolate spread
- ...
现在我想遍历所有类别,并让每个类别都遍历其所有产品并显示有关它们的一些信息:
{% for category in site.data.products %}
<div class="plist">
<div class="category">
<h3>{{ category.name }</h3>
<span>Qty</span>
</div>
{% for product category.products %}
<div class="product checkbox">
<input type="checkbox" id="{{ product.name | capitalize }}" value="{{ product.name }}">
<label for="{{ product.name | capitalize }}">{{name}}</label>
<select name="{{ product.name }}" id="{{ product.name | capitalize }}Q" autocomplete="off" class="dropdown">
<option value="0">0</option><option value="1">1</option><option value="2">2</option><option value="3">3</option><option value="4">4</option><option value="5">5</option><option value="6">6</option><option value="7">7</option><option value="8">8</option><option value="9">9</option><option value="10">10</option>
</select>
</div>
{% endfor %}
</div>
{% if loop.index0 % 2 == 0 %}
<break></break>
{% endif %}
{% endfor %}
收到此错误:
Liquid 异常:Liquid 语法错误(第 13 行):变量 '{{ category.name }' 未使用 regexp: /}}/ in order.html 正确终止
杰基尔 3.8.5 | 错误:Liquid 语法错误(第 13 行):变量“{{ category.name }”未使用正则表达式正确终止:/}}/
解决方案
好的,这是固定代码。
谢谢@ashmaroli
{% for category in site.data.products %}
<div class="plist">
<div class="category">
<h3>{{ category.name }}</h3> <!-- missing "}" -->
<span>Qty</span>
</div>
{% for product in category.products %} <!-- missing "in" -->
<div class="product checkbox">
<input type="checkbox" id="{{ product.name | capitalize }}" value="{{ product.name }}">
<label for="{{ product.name | capitalize }}">{{name}}</label>
<select name="{{ product.name }}" id="{{ product.name | capitalize }}Q" autocomplete="off" class="dropdown">
<option value="0">0</option><option value="1">1</option><option value="2">2</option><option value="3">3</option><option value="4">4</option><option value="5">5</option><option value="6">6</option><option value="7">7</option><option value="8">8</option><option value="9">9</option><option value="10">10</option>
</select>
</div>
{% endfor %}
</div>
{% cycle '','<break></break>' %} <!-- fixed -->
{% endfor %}
推荐阅读
- github - Github Desktop 未检测到 db.sqlite
- c# - 从 AudioDevices 中获取扬声器
- docker - docker 引发 rpc 错误:代码 = 14 desc = grpc:连接不可用
- css - 多行 CSS 注释是否有最佳实践?
- javascript - Firebase 交易失败;模拟器组运行得很好
- docker - 在不同主机上获取可重现的 docker 层
- r - 下载处理程序不与观察事件一起使用
- r - 循环将 xts 转换为数据框
- spring-mvc - 使用 Angular 和 Spring 发布包含数组的对象
- django - Django celery, celery-beat: 无控制地填满队列,调度麻烦