如何在Shopify Storefront上显示Heroku托管的Ruby on Rails Shopify应用页面

时间:2017-05-12 00:50:05

标签: ruby-on-rails ruby .htaccess heroku shopify

我在Heroku上有一个Ruby on Rails公共嵌入式Shopify应用程序。我试图通过应用程序代理从我的应用程序中获取页面出现在Shopify商店的前端。我已经在我的应用程序设置中设置了应用程序代理配置,但我可以显示的唯一页面是我的应用程序的公用文件夹中的文件。但是,它们并未嵌入Shopify主题中。

我无法修改.htaccess文件以将内容类型设置为application / liquid,因为该应用程序托管在Heroku上。我尝试使用控制器操作渲染文件并在那里设置内容类型:

def send
     filename = File.join(Rails.root, "/public/test.html")
     send_file(filename, :filename => "test.html", :type => 'application/liquid', :disposition => "inline")
  end   

但控制器根本不会被应用代理识别。因此,我无法使用控制器来呈现html.erb文件。我应该如何从我的rails应用程序中获取html.erb页面(或html页面)以显示在我的shopify主题中?

1 个答案:

答案 0 :(得分:0)

我得到了它的工作。我的设置存在一些问题。在Shopify控制器(ShopifyApp :: AuthenticatedController)中使用时,发送操作有效,但在控制器中使用时,同样的操作返回了“错误的参数数量(给定1,预期为0)”错误从ApplicationController继承的。修复是为了使操作的参数可选。我将'def send'更改为'def send(blank = nil)'。另外,我发送的是html文件而不是液体文件。