Ruby on rails 以编程方式在模板页面上包含代码段或资源

Ruby on rails 以编程方式在模板页面上包含代码段或资源,ruby-on-rails,shopify,Ruby On Rails,Shopify,我想在product.liquid模板和结帐的“谢谢”页面上包含一个文件 据我所知,我不能使用ScriptTags,因为我想在这些页面上使用液体变量。液体含量有时可能特定于模板 例如: {{product.id}} or {{checkout.line_items}} 目前正在安装应用程序时,我将按以下方式放置一个液体片段: ShopifyAPI::Asset.create(key: "snippets/name.liquid", src: "myserver/myfile.liquid")

我想在product.liquid模板和结帐的“谢谢”页面上包含一个文件

据我所知,我不能使用ScriptTags,因为我想在这些页面上使用液体变量。液体含量有时可能特定于模板

例如:

{{product.id}} or {{checkout.line_items}}
目前正在安装应用程序时,我将按以下方式放置一个液体片段:

ShopifyAPI::Asset.create(key: "snippets/name.liquid", src: "myserver/myfile.liquid")
商店开发人员可以通过在模板页面上插入此文件来包含此文件:

{% include 'name' %}

有没有一种方法可以做到这一点,或者通过编程实现同样的效果?这可以在安装应用程序时完成(创建代码段的同时),也可以在加载主题页时完成。

我不确定这是否是您的意思,但这就是我所做的添加代码段的工作,如您所述

{% if product.id == '13' %}
   {% include 'name' %}
{% endif $}
或者你可以这样做:

{% if template == 'index' or template == 'collection.HANDLE' %}
    {% include 'name' %}
{% endif %}

*注意:句柄将替换为您的集合句柄/名称。

这不是我的意思。首先,我不想指示店主去他们的模板文件并自己编写一个liquid include语句。第二,在“附加内容和脚本”框中放入“感谢”页面时,liquid include语句不起作用。啊,我相信我理解。是否要使用API添加包含?如果是这样,这可能会很有用:列为“更改现有液体模板的值”的部分嘿,伙计!!你是在哪里添加代码来创建代码段的,因为它应该只创建一次,对吗?嘿,我回去给你看了我的旧回购协议。我们的应用程序在管理端有一个auth流,在流的末尾,我会使用商店数据库中的列检查是否添加了它们
shop\u domain=params[:shop]
@shopObject=shop。通过(shopfify\u domain:shop\u domain)查找,然后仅在@shobObject.added\u scripttags==false时添加脚本标记。只需添加带有迁移的字段,谢谢您的回复。我是在第一次接受定期收费时添加这段代码的。我想它会成功的。但是谢谢你的建议。