È possibile utilizzare questo codice di esempio nel il tuo rake task:
include Rails.application.routes.url_helpers
puts birthdays_url(:host => 'example.com')
oppure è possibile utilizzare questo codice di esempio nella tua task rake:
puts Rails.application.routes.url_helpers.birthdays_url(:host => 'example.com')
Se si desidera solo la parte del percorso URL, è possibile utilizzare al posto di (:only_path => true)
(:host => 'example.com')
. Quindi, questo ti darebbe solo /birthdays
invece di http://example.com/birthdays
.
È necessario sia il pezzo (:host => 'example.com')
o (:only_path => true)
, perché il compito rake non sa quel po 'di informazioni e darà questo errore senza di essa:
Missing host to link to! Please provide the :host parameter, set default_url_options[:host], or set :only_path to true
fonte
2013-07-23 00:55:28
Non mi piace codificare l'host. quindi uso 'host: YOUR-APP-NAME :: Application.config.action_mailer.default_url_options [: host]' In questo modo lo preleva dai tuoi file di configurazione. – user2726983