Ruby on Rails - как добавить ссылку для просмотра через кнопку - PullRequest
0 голосов
/ 05 июля 2018

У меня есть приведенный ниже код, и я просто хочу связать свою кнопку со следующим видом

<button type="submit" class="login-button"><link_to home_page.html.erb></link_to>    
<i class="fa fa-chevron-right"></i></button>

как я могу это исправить

Ответы [ 3 ]

0 голосов
/ 05 июля 2018

=> link_to генерирует тег <a>, который не является input type="submit" .Используйте button_to , который генерирует форму с кнопкой input type="submit" для ссылки.

Предполагается, что путь к home_page.html.erb равен homepage_path (замените его на свой путь.)

<%= button_to home_page_path,class: "login-button", method: :get do%>
  <i class="fa fa-chevron-right"></i>
<% end %>

В качестве альтернативы вы можете использовать так: -

<%= button_to "<i class="fa fa-chevron-right"></i>".html_safe, homepage_path, class: "login-button", method: :get %>
0 голосов
/ 05 июля 2018

Я не уверен, что понял, но если вам нужна ссылка на другую страницу, вам не нужна кнопка, вам нужна ссылка.

Вы можете добавить простую ссылку на этот URL (не страницу, а маршрут к этой странице) и оформить ее как кнопку с помощью css, если вы хотите, чтобы она выглядела так, как вам нравится.

Если вам нужно представить и разработать некоторые вещи, вызывающие метод из вашего контроллера, это зависит от:

1. Если ваш контроллер - простой контроллер, вы можете управлять им с помощью redirect_to в конце вашего метода

def method
  # your elaboration
  redirect_to :your_route
end

2.Если это API-контроллер и вы вызываете его из функции javascript, вы можете добавить к вашему обратному вызову window.location.href к вашему маршруту

success: (data) => {
 // your elaboration
 window.location.href = "path/to/your/page"
}
0 голосов
/ 05 июля 2018

Полагаю, у вас есть form_tag или form_for где-то за пределами вашей кнопки.

Вы можете сделать это полностью Rails, как

<%= submit_tag("submit") %>

или, если вы предпочитаете ссылку

<%= link_to 'submit', your_path, your_options %>

или кнопка

<%= button_to 'subimit, your_path, your_options %>

просто посмотрите направляющие, и вы найдете множество примеров

...