ProgramingTip

레일스 POST, PUT, GET

bestdevel 2020. 12. 14. 20:36
반응형

레일스 POST, PUT, GET


스캐 폴드를 생성 한 후 Rails는 items.xmlitem. GET items.xml은 모두 포함합니다. Rails 는 수행하는 작업 유형 에 따라 컨트롤러 ( create또는) 에서 호출 할 메서드를 어디에서 index수행합니까?

보다 구체적으로 POST는 methodA를 호출하지만 동일한 URL에 대한 GET은 methodB를 호출합니다. 어디에 지정되어 있습니까? Rails index컨트롤러 메소드 호출을 어디에서 결정합니까?


REST에 의해 지정은 생각합니다 . 다음에 대한 목록이 있습니다.

GET    /items        #=> index
GET    /items/1      #=> show
GET    /items/new    #=> new
GET    /items/1/edit #=> edit
PUT    /items/1      #=> update
POST   /items        #=> create
DELETE /items/1      #=> destroy

config / routes.rb에서 모든 경로를 포함 하여 추가 하도록 편집했습니다.map.resources :items


Rails는 규칙에 따라 RESTful 리소스에 대한 7 가지 컨트롤러 메소드를 정의합니다. 그들 :

조치 HTTP 메소드 목적
-------------------------------------------------- -----------------------
index GET 리소스 모음을 표시합니다.
show GET 단일 리소스를 표시합니다.
new GET 새 리소스를 만들기위한 양식을 표시합니다.
POST 새 리소스를 생성합니다 (새 리소스가 여기에 출시 됨).
GET 기존 자원을 편집하기위한 양식을 표시합니다.
업데이트 PUT 기존 리소스를 업데이트합니다.
DELETE 단일 리소스를 삭제합니다.

웹 브라우저는 일반적으로 GET 및 POST 만 지원하기 때문에 Rails는 숨겨진 필드를 사용하여 PUT 및 DELETE 요청으로 변환합니다.

map.resources :itemsin을 지정 config/routes.rb하면 "무료"라는 7 가지 방법 얻을 수 있습니다. rake routes콘솔 에 입력하여 애플리케이션 내의 모든 경로를 수행 할 수 있습니다 .


이에 대해 배우기 가장 좋은 곳은 라우팅 가이드 입니다.


POST 만 사용하는 방법을 알고 싶습니까? 예를 들면 다음과 같습니다.

resources :items, :only => [:create]

.. 기타. 그건 그렇고 Rails 3에 대한 POST 생성을 위해 단일 리소스를 생성합니다. 또는 REST 집합의 아주 작은 하위 집합 만 필요한 경우 다음을 수행하십시오.

match 'items/:id' => "items#create', :via => :post

기타 등등.


Don Werve가 말했듯이, route.rb 파일을 사용합니다. 거기에는 아마도 다음과 같은 것이있을 것입니다.

map.resources :items

레일이 POST 및 GET 요청을 특정 작업에 연결하는 곳입니다. 그것이 어떻게 작동하는지 확인합니다. 문서는 많은 도움이됩니다.

모든 경로와 연결되는 작업에 대해 디렉토리 rake routes디렉토리의 루트에있을 때 명령 프롬프트에 입력 할 수 있습니다 . 이 스캐 폴드가 제공하는 모든 것을 (라우팅에서) 보여줍니다.


이것은 많은 도움이 될 것이지만 귀하의 질문에 대한 대답은 아닙니다. 다음 명령은 앱에서 사용하는 매핑을 추측하는 모든 세부 정보를 기억하거나 할 필요가 없습니다.

$ rake routes

더 직접적으로 대답하기 위해 rails가 사용하는 규칙입니다. route.rb에 다음과 같은 것을 넣을 때 매핑을 설정합니다.

map.resources :items

map.resources는 REST 경로와 경로 도우미를 자동으로 제공하는 메서드입니다. 이것은 레일의 편안한 라우팅이 어떻게 작동하는지 이미 알고 이해하고 있다면 좋은 기능이지만 너무 많은 것이 숨겨져 있기 때문에 레일 학습에 약간의 방해가됩니다.

Railsguides 에는 멋진 경로 가이드가 있습니다.


솔직히 말해서 Rails 웹 사이트에있는 라우팅 문서에 잘못 갈 수는 없습니다. 이를 통해 다음 단계를 수행하고 리소스의 편안함 (대부분의 앱에 적합 함)을 뛰어 넘어 사용 가능한 견고한 라우팅 기능을 제대로 파악할 수있었습니다.

http://guides.rubyonrails.org/routing.html

참고 URL : https://stackoverflow.com/questions/778385/rails-post-put-get

반응형