Shopify购物车中的动态属性名称

时间:2015-12-29 19:51:00

标签: dynamic attributes shopify

我对此非常接近,但我无法正确理解语法。我已经连续几天搞乱了。基本上我有一张贺卡消息,我希望客户在结账页面(cart.liquid)上为每张贺卡填写消息,我需要为每个索引更改属性名称。因此,我将索引添加到每个属性名称,但无济于事。出于测试目的,这是一个基本输入字段:

    <p class="cart-attribute__field" style="min-width:300px;">
      <label for="to{{ forloop.index }}">To:</label>
      <input class="checkMe" id="to{{ forloop.index  }}" type="text" name="attributes[To{{ forloop.index  }}]"  maxlength="40" data-stk="{{item.id}}" value="{{ cart.attributes['To'+forloop.index] }}" >

    </p> 

它的这一部分(值=&#34; {{cart.attributes [&#39; To&#39; + forloop.index]}}&#34;)给我带来了麻烦。

2 个答案:

答案 0 :(得分:1)

您不能在液体代码中使用'+'运算符来追加。试试这个:

{% assign cart_attr = 'To' | append: forloop.index %}
<p class="cart-attribute__field" style="min-width:300px;">
<label for="to{{ forloop.index }}">To:</label>
<input class="checkMe" id="to{{ forloop.index  }}" type="text" name="attributes[To{{ forloop.index  }}]"  maxlength="40" data-stk="{{item.id}}" value="{{ cart.attributes[cart_attr] }}" >
</p>

注意:根据需要即兴发挥。

答案 1 :(得分:0)