2010-12-05 5 views
2

私は、RoR 3.0アプリケーションをPassengerでサポートされていないサーバーに展開しようとしています。アプリケーションサーバにApache仮想フォルダを使用することになるまで、すべてうまくいきました。実稼働環境では、すべてのURLの前に手動でフォルダ名を追加する必要があります。たとえば、すべてのurl_for呼び出しで:host => "myServer/myApp"を使用する必要があります。それは動作しますが、それは痛いです。誰かがそれを自動化する良い方法を知っていますか?すべてのURLに仮想フォルダ名の接頭辞を付けます

  • 定義default_url_for:私はこれまで多くの記事読んだ後に失敗した試みたものをここで

    {:ホストを=> "myServerという/て、myApp"} application.rbではなく、効果がなかった

  • 私はurl_forを定義し、内部からスーパーを呼び出すための指示を見つけました。あなたの助けなしの効果はどちらか

おかげ

Hadrien迅速かつ汚いソリューションは、あなたのconfig/routes.rbをファイルにscopeブロック内のすべてのものをラップすることです

+1

上記の2つのソリューションは、最高の賭けのように聞こえます。そのルートに行く場合は、ActionView :: Helpers :: UrlHelperの下でurl_forを猿パッチにする必要があります。名前空間を試すこともできます:http://guides.rubyonrails.org/routing.html#controller-namespaces-androute – Cory

答えて

1

scope 'myApp' do # replace 'myApp' with the virtual folder name 

    resources :users 
    # ... 

end 
関連する問題