Today I needed my Rails app to look at it's own production URL and capture the HOST information. After spending an hour looking for an answer, I found this very elegant answer.
heroku config:set HEROKU_URL=$(heroku info -s | grep web_url | cut -d= -f2)
Now from within my Rails app. I can reference the current URL using the environmental variable ENV['HEROKU_URL']
.
Here's what config/environments/development.rb
looks like.
Rails.application.configure do
...
config.action_mailer.default_url_options = { host: ENV['HEROKU_URL'] }
end
Subscribe to new posts
Processing your application
Please check your inbox and click the link to confirm your subscription
There was an error sending the email