【问题标题】:Rails: Create a statically served pageRails:创建静态服务页面
【发布时间】:2014-09-18 17:07:50
【问题描述】:

我购买了一个模板,我想将其用作我已构建的现有应用程序的登录页面。

模板格式如下:

  |- template
    |- index.html
    |- images
    |- js
    |- css

我想将这个文件夹按原样插入到我的项目中并像这样访问它:

  def landing
    render "/app/views/template/index"
  end

由于 Rails 管道,目前这种方法对我不起作用。

有没有办法覆盖管道并以静态方式提供此模板?

我尝试过的另一种方法是托管一个单独的静态站点 (https://devcenter.heroku.com/articles/static-sites-ruby),并为我的应用程序提供当前域名,然后将其链接到主应用程序。

但是,一些研究表明更改 DNS 可能需要几天时间才能生效,这不是一种选择。

我该怎么办?

【问题讨论】:

    标签: ruby-on-rails templates static asset-pipeline


    【解决方案1】:

    一种解决方案是将 JS、CSS 和图像与资产管道集成(即将它们移动到 app/assets/ 中的适当文件夹。困难在于您必须手动更改对这些的引用index.html 文件中的内容(使用 JS 和 CSS 更容易,使用图像可能会更乏味)。然后您只需像这样创建适当的路由和控制器:

    routes.rb

    root 'template#index'
    

    template_controller.rb

    def index
    end
    

    一切都应该可以正常工作(您可能还需要将index.html 更改为index.html.erb)。

    【讨论】:

      【解决方案2】:

      我发现在将资产链接包装在以下位置后,我可以使用 公共文件夹

      <%= asset_url('LINK') =>

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-04-28
        • 1970-01-01
        • 2023-03-03
        相关资源
        最近更新 更多