Подтвердить что ты не робот

Как получить хост и порт в приложении Rails

В модели Rails я хочу узнать узел и порт. Например, если я нахожусь в тестовой среде, он вернет http://localhost:3000/, и если бы я был в производстве, он возвращал бы что-то вроде http://my.application.com/?

4b9b3361

Ответ 2

"#{root_url}"

который должен быть объявлен на ваших маршрутах. rb

Ответ 3

Вы можете использовать это

<%= request.protocol + request.host_with_port %>
#=> https://example.com:3000
<%= request.protocol + request.host %>
#=> https://example.com

Когда вы используете в конкатенации строк

"#{request.protocol}#{request.host_with_port}/book/1"
# https://example.com:3000/book/1

Ответ 4

Вы можете получить эти значения в своих контроллерах (request.host, request.port и т.д.).

Вам придется отдать это своим моделям через параметры, поскольку объект запроса доступен только в контроллерах.