Как вы перенаправляете на внешний сайт с рельсами? - PullRequest
19 голосов
/ 22 июня 2009

Мне нужны ссылки, чтобы при наведении курсора на ссылку они выглядели примерно так:

http://www.website.com/redirct_to=linkID2 (возможно, не совсем так, но попытайтесь понять идею)

В моем блоге есть область формы, в которую я могу ввести URL-адрес веб-сайта, но я хочу сделать его перенаправленным на внешний веб-сайт, когда он показывает сообщение.

Ответы [ 3 ]

45 голосов
/ 22 июня 2009
redirect_to "https://website.com"

должен делать это, пока включен протокол. Для дополнительной гибкости вы можете проанализировать его с помощью URI, чтобы убедиться в правильности всех полей. Возможно, вы захотите URI.encode / URI.decode

2 голосов
/ 22 июня 2009

Создайте новую модель, например, под названием Link, для хранения URL-адресов, на которые вы хотите перенаправить. Затем сгенерируйте новый контроллер (вы можете использовать scaffold для генерации контроллера и модели одновременно) и измените действие show, чтобы получить запись с заданным идентификатором и redirect_to @ link.url.

Если вы не хотите использовать действие #show для этого шага, создайте новое действие для обработки перенаправления (например, goto, redirect ...).

0 голосов
/ 17 января 2013

redirect_to недоступно в представлениях или не является вспомогательным методом, обязательно используйте его в контроллерах, но если вы действительно хотите перенаправить из представления, используйте решение javascript

window.location.href = <% = post.link_url%>

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...