[Rails]Prefix와 URI 패턴 정보

고마워요



우선 처음이지만,
방금 전에, 과거에 투고한 것에 대해, 매우 고맙게 지적해 주셨습니다.
답장의 방법을 잘 알지 못하고 다시 한번 감사드립니다.
@ 시자자키 감사합니다! 공부가 되었습니다!

소개



이 기사에서는 Prefix와 URI 패턴에 대해 설명합니다.
요 전날 라우팅 중첩으로 케어리스 실수를하고,
오류를 처리하는 데 몇 시간이 걸렸습니다.
요 전날 게시 한 것도 나중에 참조하십시오.

다시 한번 자세히 설명하고 싶습니다 게시합니다.

Prefix란?



경로가 들어간 변수처럼,
어떤 페이지로 전환하고 싶은지를 경로로 코드에 작성하는 경우,
끝에 '_path'를 입력해야 합니다.

URI 패턴



라우팅 경로를 나타내며,
이 경로에서 페이지로 전환하면 지정된 컨트롤러 및 조치로 처리가 수행됩니다.
여기에 URI 패턴에 나열된 URL은 전환 후 URL과 거의 동일합니다.

rails routes에서 확인



예를 들어, 실제로 rails routes 한 것을 첨부합니다.



약간 문자가 작을 수 있습니다. 죄송합니다.

왼쪽부터,
첫 번째: Prefix
둘째: HTTP 메소드
세 번째 : URI 패턴
네 번째 : 각 테이블의 컨트롤러와 그에 대한 액션

사용법의 예로는
<%= link_to "by #{prototype.user.name}", user_path(prototype.user), class: "card__user" %>

등으로 설명합니다.
"user_path(prototype.user)"는 이미지에서 맨 아래 줄을 사용하며,
가장 오른쪽을 보듯이 "users#show".
즉, 사용자 정보 페이지로 전환하는 경로입니다.

덧붙여서, 적절한 사용자 정보 페이지로 전환하면,
URL은 다음과 같습니다.
http://localhost:3000/users/3
* 「3」은 3번째로 사용자 등록했기 때문에, 레코드에 id가 3이 되어 있어 「3」이라고 표시되고 있습니다.

그건 그렇고, users # show의 URI 패턴은 「/users/:id(.:format)」URLの最後の記載とほぼ同じです。
또한,
user_path(prototype.user)의 (prototype.user)
누구의 사용자 정보로 전환할지 보여주는 곳입니다.

이번에는
프로토 타입을 게시 한 사용자 (prototype.user)
"사용자 정보로 전환 user_path"할 경로. 라는 것입니다.

라우팅 중첩으로 케어리스 미스



요전날의 투고와 내용은 다소 씁니다.
  resources :prototypes
  resources :prototypes do
    resources :comments, only: :create
  end
  resources :users, only: :show
  resources :prototypes
  resources :prototypes do
    resources :comments, only: :create
    resources :users, only: :show
  end

이 두 가지는 사용자를 중첩했는지 아니면 하지 않는지의 차이입니다.
ネストしているかどうかでrails routesで記載されるものが違います。
즉, 라우팅에는 조심하세요! 라는 것입니다.

끝에



중첩 실수에 대해 라우팅 오류 중 하나로 언급되지 않을까요?
앞으로도 조심하고 학습을 진행합니다.

또한 처음에 썼지만,
지적을 받을 수 있다는 것은 매우 고맙다고 느끼고 있습니다.
오른쪽도 왼쪽도 모르게 행동해 투고하기 시작한 것에 의해 배울 수 있는 것을 이번 몸으로 알 수 있었습니다.

앞으로도 해보려고 생각했을 때부터 행동해, 아웃풋을 적극적으로 실시하도록 유의합니다.

그럼 계속 노력하겠습니다! !

좋은 웹페이지 즐겨찾기