用于循环的嵌套Jekyll未检测到';包含';

用于循环的嵌套Jekyll未检测到';包含';,jekyll,Jekyll,我有一个嵌套的for循环,它检查一个文件路径名是否与我的一篇文章中的一个主题匹配。我遇到的问题是,无论出于何种原因,if语句都不起作用,即使我可以在if语句之前打印file.path和post.assets,你知道这为什么不起作用吗 {% for post in site.posts limit:3 %} urlsToCache.push("{{ post.url }}") {% for file in site.static_files %} {% if file.path c

我有一个嵌套的for循环,它检查一个文件路径名是否与我的一篇文章中的一个主题匹配。我遇到的问题是,无论出于何种原因,if语句都不起作用,即使我可以在if语句之前打印
file.path
post.assets
,你知道这为什么不起作用吗

{% for post in site.posts limit:3 %}
  urlsToCache.push("{{ post.url }}")
  {% for file in site.static_files %}
    {% if file.path contains '{{ post.assets }}' %}
      urlsToCache.push("{{ file.path }}")
    {% endif %}
  {% endfor %}
{% endfor %}
如果在我之前打印了以下内容,这让我相信
{%If file.path包含“{{post.assets}}”}
应该可以工作,但它不是

jekyll-sw
/assets/posts/jekyll-sw/montezuma_sw.jpg

谢谢你的帮助

当访问if语句中的变量时,避免用大括号括起来,可以直接访问它,如下所示:

{% if file.path contains post.assets %}
 urlsToCache.push("{{ file.path }}")
 {% endif %}