Domanda

Ho una spazzatrice che rintraccia la cache aprendo gli URL nei processi biforcuti.È abbastanza facile da codificare in modo difficile il host per quegli URL, ma voglio che cambi dinamicamente, in base all'ambiente.

So che posso impostare variabili globali / ambientali per questo, ma mi piacerebbe davvero usare percorsi denominati.C'è un modo per farlo?

(Dovrei chiarire che ho provato a mettere solo i percorsi nominati lì ma non si risolvono in runtime.)

È stato utile?

Soluzione

The closest I found is:

Rails.application.routes.named_routes.get(:user).defaults

Which retrieves:

{:action=>"show", :controller=>"users"}

But you should merge it with your params:

Rails.application.routes.named_routes.get(:user).defaults.merge({:id => 1})

Result:

{:action=>"show", :controller=>"users", :id=>1}

Edit:

Simply add

include Rails.application.routes.url_helpers 

to your class

Altri suggerimenti

I fixed this in the current Rails 3.2 beta:

https://github.com/rails/rails/pull/3876

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top