Мне трудно понять «Rails Way», чтобы добавить URL-адрес подтверждения электронной почты в почтовую программу.
Я предпочитаю не делать это исключительно с помощью REST, потому что, ну, это сложно с текстовой электронной почтой, потому что они не могут PUT
запрашивать.
вот мои маршруты.rb: get 'confirm/:id' => 'Confirmations#confirm'
и в моей почтовой программе я хотел бы поместить email_confirm_url(@user.email_token)
там, где я хочу, чтобы URL-адрес встречался.
Я создал помощника:
#app/helpers/confirmations_helper.rb
module ConfirmationsHelper
def email_confirm_url(token)
"/confirm/#{token}"
end
end
все это вроде как работает, за исключением случаев, когда я звоню email_confirm_url(@user.email_token)
…
Я буквально получаю: "/confirm/abcdefg…
"
Когда я хочу: http://myhostname/confirm/abcdefg…
Или в разработке: http://localhost:3000/confirm/abcdefg…
Как сделать так, чтобы мой хелпер URL больше походил на встроенные хелперы <resource>_path
и <resource>_url
в Rails? хотя на самом деле я полагаю, что мне действительно нужно только нужно _url
.
#Edit: у меня есть это в моей конфигурации среды:
#config/environments/development.rb
...
config.action_mailer.default_url_options = { :host => "localhost:3000" }