이미지를 원하는 페이지로 연결

2419 단어 HTMLBootstrapRails

이미지를 원하는 페이지에 링크시키고 클릭하면 전환



상기의 기능을 실장할 때, 손질했기 때문에 비망록으로서 남겨 둡니다.

a 태그로 링크시키려고 생각해, 쓰는 방법을 조사해 상대 패스로 기술하기로 했다.
a 태그 경로 지정
아래 코드에서 실행했지만 Routing Error가 발생했습니다.

tops/index.html.erb
<a href="groups/index.html.erb"><img src="assets/1.png" class="img-fluid" alt="Responsive image"></a>



다음 방법도 시도했지만 마찬가지로 Routing Eroor가 발생했습니다.

◆ 링크 대상 등의 기술 예 |
같은 폴더에 링크할 때는 파일 이름만(또는 ./다음에 파일 이름)을 씁니다.
하위 계층에 링크할 때는 폴더명에 계속해서/를 넣어 파일명을 기술합니다.
상위 계층에 링크할 때는 ../에 이어 파일명을 기술합니다. 2개 이상의 계층을 지정할 때는 ../../에 이어 파일명을 기술합니다.
병렬 계층 구조의 폴더에 연결할 때 ../다음에 폴더 이름과/를 넣고 파일 이름을 작성합니다.

해결책

link_to를 사용하여 설명하기로 결정했습니다.
우선 라우팅 설정

routes.rb
    Rails.application.routes.draw do
      devise_for :users
      root 'tops#index'
      resources :groups, only: :index
    end

그런 다음 컨트롤러

groups_controller.rb
  class GroupsController < ApplicationController
    def index
    end
  end

마지막으로 보기

tops/index.html.erb
    <%= link_to (groups_path) do%>
      <img src="assets/1.png" class="img-fluid" alt="Responsive image">
    <% end%>

위의 절차로 이미지 링크에 성공했습니다.

왜 a 태그로 할 수 없었습니까?

· rails로 링크시킬 경우 상대 경로를 사용할 수 없다?
・rails,ruby의 버젼이 상대 패스의 사양에 대응하고 있지 않다?
(rails 5.0.7.2, ruby ​​2.5.1)

확증이 없기 때문에 아는 분은 꼭 코멘트 부탁드립니다! ! ! ! !

좋은 웹페이지 즐겨찾기