Rails将任何路径路由到公共中的静态文件

时间:2015-08-20 13:40:49

标签: ruby-on-rails ruby routing single-page-application

我正在构建静态页面应用程序。

每个路径查询,/(root),/sessions/new/posts/都应返回放置在public/index.html中的文件而不重定向(我需要保存路径,因为内部javascripts模块可以使用它。)

我该怎么做?

2 个答案:

答案 0 :(得分:0)

添加after_action可能会有效,这将继承到所有控制器,从而允许每个控制器方法呈现此文件。我不认为你可以直接在routes.rb中提供静态文件(如果有人不知道,请纠正我)

# app/controllers/application_controller.rb
class ApplicationController < ActionController::Base
  # ...
  # ...

  after_action render_index

  def render_index
    render file: 'index.html'
  end

  # ...
  # ...
end

答案 1 :(得分:0)

Huan Son是对的,没有控制器就没有机会。

我找到的最好方法是编写一个控制器,用于发送放置在public文件夹中的静态文件。