복붙노트

[RUBY-ON-RAILS] 명명 된 노선 _url 대 _path

RUBY-ON-RAILS

명명 된 노선 _url 대 _path

레일라는 경로를 제공합니다.

경로 또는 URL을 사용하여 호출 할 수있는 도우미 경로

문서의 예 :

# and provide these named routes
root_url   # => 'http://www.example.com/'
root_path  # => '/'

솔직히 나는 아직 * _url 도우미를 사용한 적이 말하면, 나는 * _path를 사용하여 작업하는 것을 얻을 수있었습니다.

나는 조금이 두 개의 서로 다른 헬퍼의 목적은 무엇인가 혼동했다?

그들이 어떻게 서로 다른가?

설명과 함께 진짜 예 때 좋은 것입니다 무엇을 사용합니다.

해결법

  1. ==============================

    1._path 도우미는 사이트 루트 상대 경로를 제공합니다. 당신은 아마 시간의 대부분을 사용해야합니다.

    _path 도우미는 사이트 루트 상대 경로를 제공합니다. 당신은 아마 시간의 대부분을 사용해야합니다.

    _url 헬퍼 프로토콜 및 서버 이름을 포함한 절대 경로를 제공합니다. 나는 서버의 응용 프로그램에 대한 링크를 만들 때 내가 주로 이메일에 이것들을 사용하는 것으로 나타났습니다. 외부 사용에 대한 링크를 제공 할 때 주로 사용되어야한다. (복사와 같은 이메일 링크, RSS, 사물을 생각하고 YouTube 동영상의 "공유"섹션에서 URL 필드에 붙여 넣습니다.)

  2. ==============================

    2.당신이 당신의 자신의 사이트에 링크를 넣을 때, 경로의 도메인 부분이 중복이며, 당신은 단지 * _path 도우미와 URL의 경로 부분을 사용할 수 있도록, 페이지 크기에 추가합니다. 반면에, 사이트, 예를 들어, 외부에서 소비 될 URL이 경우 전체 URL이 필요한 이메일이나 RSS 피드는, 그래서 * _url 도우미를 사용합니다.

    당신이 당신의 자신의 사이트에 링크를 넣을 때, 경로의 도메인 부분이 중복이며, 당신은 단지 * _path 도우미와 URL의 경로 부분을 사용할 수 있도록, 페이지 크기에 추가합니다. 반면에, 사이트, 예를 들어, 외부에서 소비 될 URL이 경우 전체 URL이 필요한 이메일이나 RSS 피드는, 그래서 * _url 도우미를 사용합니다.

  3. ==============================

    3.다른 답변이 설명으로, 당신은 이메일 링크 등으로 _url 사용해야합니다 하지만 여기에 설명 된대로 또한, 리디렉션에 _url를 사용하는 것을 추가하고 싶습니다 :

    다른 답변이 설명으로, 당신은 이메일 링크 등으로 _url 사용해야합니다 하지만 여기에 설명 된대로 또한, 리디렉션에 _url를 사용하는 것을 추가하고 싶습니다 :

    https://www.ruby-forum.com/topic/101346#221052

    그리고 여기:

    http://viget.com/extend/rails-named-routes-path-vs-url

    또한 여기에 HTTP 사양의 관련 섹션에서 좀 걸릴 수 있습니다 :

    http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.30

  4. ==============================

    4._path 상대 경로를 제공한다.

    _path 상대 경로를 제공한다.

    _url 절대 경로를 제공한다.

    이메일 등의 URL을 보낼 때마다 그것을 사용 _url 대신 _path에 가장 좋은 방법은보다.

  5. from https://stackoverflow.com/questions/11939865/named-routes-path-vs-url by cc-by-sa and MIT license