我正在开发一个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
中的静态页面我已经研究过高压,它似乎不是我正在寻找的解决方案。 我希望这听起来很有趣。
答案 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
中