2011-12-10 17 views
14

que tiene una configuración en la nginx sirve una aplicación de carriles dentro de una subcarpeta específicaAnteponer prefijo de ruta para todas las rutas de carriles

por ejemplo. http://myserver/railsapp/ y todo lo que se encuentra en el interior se transfiere a los rieles, si la primera subcarpeta es diferente, los servidores de archivos estáticos de otra carpeta.

No he podido encontrar cómo especificar este comportamiento en los rieles de una manera inteligente. Quiero decir, lo que quiero es especificar una opción como Rails.server_prefix = /railsapp para que todas las rutas se anexen automágicamente, tanto en las solicitudes entrantes como en los enlaces generados.

Respuesta

30

es probable que desee utilizar el método del alcance del router con el: ruta argumento:

Rails.application.routes do 
    scope(:path => '/railsapp') do 
    # the rest of your routes go here 
    end 
end 

See the docs for more info.

+0

esto funcionaría para la generación de rutas, pero en los carriles 3.1, esto no reconocerán '/ railsapp/assets/pic.png' ... –

+8

bueno, ahora entendí la función de 'config.assets.prefix' ... Tuve que poner' config.assets.prefix = '/ railsapp/assets'' y ahora ¡funciona! –

+1

También puede hacer 'scope path: '/ railsapp' do' para una sintaxis un poco más simple en mi opinión. ¡Gracias por esto, sin embargo, me han ayudado! – stuyam

Cuestiones relacionadas