Computer >> 컴퓨터 >  >> 프로그램 작성 >> Ruby

Rails link_to 메소드 사용 방법(예제 포함)

레일스 link_to 방법!

모든 Rails 애플리케이션에서 사용할 가장 일반적인 도우미 메서드 중 하나입니다.

하지만 어떻게 작동합니까?

link_to에 대해 알아보기 위해 여기에 온 경우 및 함께 사용할 수 있는 다양한 옵션을 찾으셨다면 바로 찾아오셨습니다!

먼저...

link_to의 기능 할래?

글쎄, 이 전체 웹사이트는 페이지 사이에 링크가 있기 때문에 작동합니다.

페이지에서 페이지로 이동하는 방법입니다.

일반 HTML에서는 다음과 같은 링크를 만듭니다. :

Improve Your Ruby Skills

하지만 Rails에서는 다음과 같이 보일 것입니다. :

<%= link_to "Improve Your Ruby Skills", "/ruby-book" %>

왜?

우리는 Rails에서 경로를 사용하기 때문입니다.

_path를 사용하여 이를 활용하고자 합니다. 메서드 및 대상 만들기(href ) 링크.

link_to 사용 값을 보간할 필요가 없기 때문에 이 작업을 더 쉽게 수행할 수 있습니다.

이것이 내 뜻입니다 :

">Improve Your Ruby Skills

지금:

이 메서드에서 지원하는 가장 유용한 선택적 인수에 대해 자세히 살펴보겠습니다.

Rails link_to 옵션 및 인수

link_to의 첫 번째 인수 링크의 텍스트입니다.

두 번째 주장은?

연결하는 URL입니다.

원하는 경우 하드코딩할 수 있지만 대부분의 경우 Rails 모델 또는 _path를 사용합니다. 방법.

Rails는 적절한 규칙을 따랐을 때 상황을 파악할 것입니다.

예를 들어 :

<%= link_to "Improve Your Ruby Skills", book_path(@book) %>

또는 :

<%= link_to "Improve Your Ruby Skills", @book %>

어떤 것을 사용해야 하는지 어떻게 알 수 있나요?

  • 특정 자원(책)을 언급할 때의 단수형
  • 컬렉션(도서)을 언급할 때의 복수형

:

# Plural
<%= link_to "All Books", books_path %>

# Singular
<%= link_to "Edit Book", edit_book_path(@book) %>

또한 경로를 확인하는 데 도움이 됩니다(rake routes 사용). ).

첫 번째 열에는 이름이 있습니다(예:edit_book ) _path를 추가하여 링크에 사용할 수 있습니다. 그것에.

확인 후 링크 삭제

사용할 수 있는 두 가지 유용한 옵션:

  • 확인
  • disable_with

:

<%= link_to "Delete Book", @book, method: "delete", { confirm: "Are you sure?", disable_with: "Processing..." } %>

링크의 기본 동작은 GET 요청입니다.

"DELETE" 작업을 사용하려면 구체적으로해야 합니다. .

하지만…

이전 페이지에 대한 링크를 원하면 어떻게 합니까?

시도 :

<%= link_to "Back", :back %>

사용자 정의 CSS 클래스 및 HTML 속성을 사용하는 방법

CSS를 사용하여 링크를 다르게 만들 수 있습니다.

예를 들어 :

<%= link_to "Get More Books", books_path, class: "index-link" %>

다음 CSS가 있다고 가정:

.index-link {
  color: blue;
  padding: 10px;
}

더 많은 HTML 속성(예:"id")이 필요한 경우 링크 텍스트 및 링크 URL 뒤에 추가할 수 있습니다.

쿼리 매개변수 및 앵커 링크를 만드는 방법

도움이 될 수 있는 또 다른 옵션은 쿼리 매개변수 및 앵커로 링크를 생성하는 기능입니다.

이것이 도움이 되는 이유는 무엇입니까?

사용자가 링크를 클릭하면 컨트롤러에서 이 추가 데이터에 액세스할 수 있기 때문입니다.

몇 가지 예를 살펴보겠습니다!

이와 같은 URL을 만들고 싶다면 :

"/search?q=all"

이렇게 하면 됩니다 :

<%= link_to "Search ALL", search_path(q: "all") %>

이 URL의 경우 :

"/books#programming"

할 수 있습니다 :

<%= link_to "Programming Books", books_path(anchor: "programming") %>

URL 도우미와 결합(_path / _url ), link_to 필요한 모든 유연성을 제공합니다.

이미지에 링크

많은 사람들이 link_to를 모릅니다. 선택적 블록을 사용합니다.

이것은 더 복잡한 시나리오를 가능하게 합니다.

이미지에 링크하는 것과 같습니다. :

<%= link_to books_path do %>
  <%= image_tag "Book Collection" %>
<% end %>

이 예에서 블록의 내용은 연결 텍스트, 이미지 또는 클릭 가능하게 하려는 기타 HTML 요소가 됩니다.

요약

link_to에 대해 알아보았습니다. Rails의 메소드!

이 기사가 도움이 되었다면 내 Ruby 책을 받아 Ruby 기술을 강화하고 내 작업을 지원할 수 있습니다.

읽어주셔서 감사합니다 🙂