2011-09-14 19 views
1

私はページの各セクションにXMLファイルを書き込むRuby-on-Railsアプリケーションに取り組んでいます。そのため、ユーザーがリクエストするたびにデータベースにクエリを出すのではなく、そのページに対応するXMLファイルを呼び出すだけで、JavaScriptがファイルを解析します。レール側にはコンテンツ管理システムがあります。ユーザーはすべてのコンテンツ変更をコミットする準備ができたら、公開ファイルにヒットします。その時点で、すでにデータベースに保存されている可能性のあるデータがxmlファイルに書き込まれます。Railsのルートと静的ページ

問題は、すべてのxmlファイルを、xml_displayというメインプロジェクトディレクトリのフォルダ内に配置することです。 rails_project_root/display_xml/pagename.xmlで

私が要求などを取るためにroutes.rbを設定するにはどうすればよい

... myhost.com/display_xml/pagename.xml と静的なページを返す

私がしました高電圧を見て、それは私が探している解決策ではないようです。 これはあなたにとって興味深いと思います。

+0

display_xmlディレクトリがプロジェクトルートの直接の子であることは重要ですか?あなたはそれをpublic/display_xmlにすることができ、ルーティングの問題はまったくないでしょう。あるいは、public/display_xmlをdisplay_xmlにシンボリックリンクすることもできます。 – dantswain

答えて

1

あなたは自分の静的ファイルに次のようなものリダイレクトコントローラ作ることができます:あなたはhost_domainを設定する必要が

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 

をあなたが走っているところにどこにでも。ほとんどがconfig.ymlに設定されています

+0

これは完全に機能しました!あなたのアドバイスをありがとうございました。 –

関連する問題