Rails路由和静态页面

时间:2011-09-14 21:05:17

标签: javascript ruby-on-rails xml

我正在开发一个ruby-on-rails应用程序,它可以为页面上的每个部分编写XML文件。因此,不是每次用户发出请求时都查询数据库,而只是调用与该页面对应的XML文件,javascript将解析该文件。在轨道侧,将有一个内容管理系统。当用户准备提交所有内容更改时,他们将点击发布文件,此时可能已保存在数据库中的数据现在将写入xml文件。

挑战在于我希望所有xml文件都存在于名为xml_display的主项目目录中的文件夹中。

如何配置routes.rb以接收请求... myhost.com/display_xml/pagename.xml 并返回rails_project_root / display_xml / pagename.xml

中的静态页面

我已经研究过高压,它似乎不是我正在寻找的解决方案。 我希望这听起来很有趣。

1 个答案:

答案 0 :(得分:1)

您可以创建一个重定向到静态文件的控制器,如下所示:

的routes.rb

match '/display_xml/:id', :action => 'display'

display_xml_controller.rb

class DisplayXMLController
  def display
    redirect_to "http://#{host_domain}/static_xml_dir_in_public/#{params[:id]}.xml
  end
end

您需要将host_domain设置为运行的位置。大多数设置在config.yml