2012-10-03 31 views
2

当收集使用json过滤器时,出现“液体错误:未定义的方法`encode_json'”错误。它在我的测试店运行良好,但在我的真实商店没有。有任何想法吗?液体错误:undefined方法`encode_json'

这是我的 '液体'(我称之为一个集 '交货')

{% for delivery in collections.Delivery.products %} 
    {{ delivery.title }}<br /> 
{% endfor %} 
<script> 
var myproductJson={{ product | json }}; 
var mydeliveryJson={{ collections.Delivery.products | json}}; 
</script> 

,这是生成的页面源:

Ethical Addictions Delivery<br /> 
    Natures Roast Delivery<br /> 
    Round Hill Roastery Delivery<br /> 

<script> 
var myproductJson={"id":106656988,"title":"Ethical Addictions etc... 
var mydeliveryJson=Liquid error: undefined method `encode_json' for #<ProductDrop:0x000000026c8a98>; 
</script> 

回答

1

我不知道有可能在这样的几种产品上使用json过滤器。

试试这个:

<script> 
var mydeliveryJson = []; 
{% for delivery in collections.delivery.products %} 
mydeliveryJson.push({{ delivery | json }}); 
{% endfor %} 
</script>