2011-02-23 1 views
0

나는 레일 플러그인으로 찾고 있어요하고 그 사용자를 만들 것, HTML 양식은Rails에서는/users에 대한 GET이 색인 조치 용이고 RESTful 표준은/users에 대한 POST가 작성 조치 용입니까?

<form action="/users" method="post"> 

을 말한다 내가 할 경우는

rake routes 

는 말한다 :

users GET /users(.:format)   {:controller=>"users", :action=>"index"} 
     POST /users(.:format)   {:controller=>"users", :action=>"create"} 

표준처럼 보이는 이유는 /controller_name으로 이동하면 index 동작을 수행하는 반면 POST는 create acti 에? 이것은 거의 100 % 표준입니까? 어떤 예외가 있습니까?

답변

1

레일스의 수완이 많은 경로를 사용할 때 이것이 기본값입니다. 물론 guide에 설명 된대로 여러 가지 방법으로이 기본값을 무시할 수 있지만 정당한 이유가 있습니다.

+0

그냥 축약입니까? '/ users /'에 대한 POST 대신 사용자를 생성하기 위해'/ users/create '에 POST하는 것이 똑같은가요? ('/ users/create '에 대한 게시가 대회가되는 경우) –

+0

확실히/user/create에 게시하여 사용자를 만들 수는 있지만 RESTful은 아닙니다. Rails는 REST 방식을 권장하지만 필요하지는 않습니다. –

1

THER의 대답은 NO

레일 완패은 당신이 상상할 수있는만큼 유연하다.

but. Rails는 REST 스타일을 좋아한다. 당신은 CRUD 같은 일부 위키에게 http://en.wikipedia.org/wiki/Representational_State_Transfer

REST를 읽을 수 있습니다 http://en.wikipedia.org/wiki/Create,_read,_update_and_delete

겠어요 - 우리는 자원에 관해 협약을 맺었습니다. 우리는 할 수 있습니다 자원의

  • READ 목록 : GET /resources
  • READ 자원 : 대한 DELETE /resources/:id
  • READ 자원 : DELETE 자원을 PUT /resources/:id
  • : POST /resources
  • UPDATE 자원 : GET /resources/:id
  • 은 새 자원을 작성 편집 : GET /resources/:id/edit
  • 읽기 f 또는 만들기 : GET /resources/new

이것은 REST의 기초입니다.