[Ruby on rails] 7가지 액션 이외의 액션 설정
소개
프리마 어플의 팀 개발을 하고 있을 때의 멤버로부터의 질문으로, 「상품 구입 완료의 페이지를 작성하고 있지만, 편집(edit)이나 삭제(destroy)는 알지만 구입 완료는 어떤 액션을 사용하면 좋은지 모른다』라는 것이 있었으므로 조사한 것을 비망록으로 남겨 둡니다.
결론
우선 그 때 취한 선택으로서 임의의 액션을 만드는 것으로 했습니다.
이번의 경우에는 완료(done)라고 했습니다.
(바르게는 구입 완료이므로 Purchase completed입니다만・・・)
그래서 무사히 해결! !
라는 이유로는 가지 않습니다.
이번 논점은 기본의 7개의 액션 이외의 액션을 추가했을 때의 대응입니다.
7가지 액션이란?
7개의 액션이란, rails로 정의되고 있는 메소드로 다음의 것을 말합니다.
액션
역할
색인
목록보기
show
상세를 표시한다
새로운
게시 양식을 표시합니다.
create
리소스 추가하기
edit
업데이트 양식 보기
update
리소스를 업데이트합니다.
destroy
리소스 삭제하기
이것을 routes.rb로 설정할 때 resources 메소드를 사용할 것이라고 생각합니다.
routes.rb(예)Rails.application.routes.draw do
resources :items
end
7개의 액션은 각각에 주어진 역할이 있으므로 기능을 추가했을 때는 우선은 이 7개의 액션 중 어느 것에 들어맞는가를 생각합니다.
7개의 액션 이외의 액션의 경우
위의 resouces 메소드로 7개의 액션을 자동으로 정의할 수 있습니다만, 이번과 같이 7개의 액션 이외의 액션(done)을 추가하는 경우는 어떻게 하면 좋을까요?
· 수집 및 멤버
7가지 기본 액션 이외에 라우팅을 정의할 때는 collection 또는 member를 이용합니다.
collection은 라우팅에 : id가 붙지 않는다, member는 : id가 붙는다. 라는 차이가 있습니다.
이번 구매 완료(done)는 특히 id를 지정할 필요가 없는 단순한 통지의 페이지의 작성이 되기 때문에 collection를 사용합니다.
이번 구현에서는 상품 구입에 관련된 orders 컨트롤러에 액션을 추가했습니다.
orders_controller.rbclass OrdersController < ApplicationController
def show
省略
end
def create
省略
redirect_to action: :done ⬅️ 購入が完了したらdoneに移動してもらう
end
def done ⬅️ 今回追加されたアクション
end
end
계속 라우팅
routes.rbresources :orders, only: [:show, :create] do
collection do ⬅️ 今回はcollectionを使用(idは不要)
get 'done'
end
end
그리고는 done의 html과 css를 작성해 구입 완료 페이지를 작성한다! !
이것으로 완성! ! 참고한 기사: htps : // 피카와카. 코 m / 라이 ls / 레소 r 세 s # 메 m r % 에 3 % 81 % 아 8 코 c 치온
마지막으로
스쿨에서의 팀 개발의 기간도 얼마 안 되었습니다.
지금까지 함께 배워온 동료들에게 감사의 마음을 담아 사소한 일이라도 기록에 두고 싶습니다.
여기까지 보아 주셔서 감사합니다.
Reference
이 문제에 관하여([Ruby on rails] 7가지 액션 이외의 액션 설정), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/imayasu/items/19f43a5726ed2170f611
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
우선 그 때 취한 선택으로서 임의의 액션을 만드는 것으로 했습니다.
이번의 경우에는 완료(done)라고 했습니다.
(바르게는 구입 완료이므로 Purchase completed입니다만・・・)
그래서 무사히 해결! !
라는 이유로는 가지 않습니다.
이번 논점은 기본의 7개의 액션 이외의 액션을 추가했을 때의 대응입니다.
7가지 액션이란?
7개의 액션이란, rails로 정의되고 있는 메소드로 다음의 것을 말합니다.
액션
역할
색인
목록보기
show
상세를 표시한다
새로운
게시 양식을 표시합니다.
create
리소스 추가하기
edit
업데이트 양식 보기
update
리소스를 업데이트합니다.
destroy
리소스 삭제하기
이것을 routes.rb로 설정할 때 resources 메소드를 사용할 것이라고 생각합니다.
routes.rb(예)Rails.application.routes.draw do
resources :items
end
7개의 액션은 각각에 주어진 역할이 있으므로 기능을 추가했을 때는 우선은 이 7개의 액션 중 어느 것에 들어맞는가를 생각합니다.
7개의 액션 이외의 액션의 경우
위의 resouces 메소드로 7개의 액션을 자동으로 정의할 수 있습니다만, 이번과 같이 7개의 액션 이외의 액션(done)을 추가하는 경우는 어떻게 하면 좋을까요?
· 수집 및 멤버
7가지 기본 액션 이외에 라우팅을 정의할 때는 collection 또는 member를 이용합니다.
collection은 라우팅에 : id가 붙지 않는다, member는 : id가 붙는다. 라는 차이가 있습니다.
이번 구매 완료(done)는 특히 id를 지정할 필요가 없는 단순한 통지의 페이지의 작성이 되기 때문에 collection를 사용합니다.
이번 구현에서는 상품 구입에 관련된 orders 컨트롤러에 액션을 추가했습니다.
orders_controller.rbclass OrdersController < ApplicationController
def show
省略
end
def create
省略
redirect_to action: :done ⬅️ 購入が完了したらdoneに移動してもらう
end
def done ⬅️ 今回追加されたアクション
end
end
계속 라우팅
routes.rbresources :orders, only: [:show, :create] do
collection do ⬅️ 今回はcollectionを使用(idは不要)
get 'done'
end
end
그리고는 done의 html과 css를 작성해 구입 완료 페이지를 작성한다! !
이것으로 완성! ! 참고한 기사: htps : // 피카와카. 코 m / 라이 ls / 레소 r 세 s # 메 m r % 에 3 % 81 % 아 8 코 c 치온
마지막으로
스쿨에서의 팀 개발의 기간도 얼마 안 되었습니다.
지금까지 함께 배워온 동료들에게 감사의 마음을 담아 사소한 일이라도 기록에 두고 싶습니다.
여기까지 보아 주셔서 감사합니다.
Reference
이 문제에 관하여([Ruby on rails] 7가지 액션 이외의 액션 설정), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/imayasu/items/19f43a5726ed2170f611
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Rails.application.routes.draw do
resources :items
end
위의 resouces 메소드로 7개의 액션을 자동으로 정의할 수 있습니다만, 이번과 같이 7개의 액션 이외의 액션(done)을 추가하는 경우는 어떻게 하면 좋을까요?
· 수집 및 멤버
7가지 기본 액션 이외에 라우팅을 정의할 때는 collection 또는 member를 이용합니다.
collection은 라우팅에 : id가 붙지 않는다, member는 : id가 붙는다. 라는 차이가 있습니다.
이번 구매 완료(done)는 특히 id를 지정할 필요가 없는 단순한 통지의 페이지의 작성이 되기 때문에 collection를 사용합니다.
이번 구현에서는 상품 구입에 관련된 orders 컨트롤러에 액션을 추가했습니다.
orders_controller.rb
class OrdersController < ApplicationController
def show
省略
end
def create
省略
redirect_to action: :done ⬅️ 購入が完了したらdoneに移動してもらう
end
def done ⬅️ 今回追加されたアクション
end
end
계속 라우팅
routes.rb
resources :orders, only: [:show, :create] do
collection do ⬅️ 今回はcollectionを使用(idは不要)
get 'done'
end
end
그리고는 done의 html과 css를 작성해 구입 완료 페이지를 작성한다! !
이것으로 완성! ! 참고한 기사: htps : // 피카와카. 코 m / 라이 ls / 레소 r 세 s # 메 m r % 에 3 % 81 % 아 8 코 c 치온
마지막으로
스쿨에서의 팀 개발의 기간도 얼마 안 되었습니다.
지금까지 함께 배워온 동료들에게 감사의 마음을 담아 사소한 일이라도 기록에 두고 싶습니다.
여기까지 보아 주셔서 감사합니다.
Reference
이 문제에 관하여([Ruby on rails] 7가지 액션 이외의 액션 설정), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/imayasu/items/19f43a5726ed2170f611
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여([Ruby on rails] 7가지 액션 이외의 액션 설정), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/imayasu/items/19f43a5726ed2170f611텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)