Come posso accedere a percorsi denominati in una spazzatrice per rotaie?
-
16-11-2019 - |
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.)
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:
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow