1

나는 프레젠테이션 모델을 보통의 방법으로 양식을 통해 만들었습니다.여러 리소스를 만드는 페이지는 어디에 있어야합니까?

프리젠 테이션 모델은 두 개의 중첩 된 자원이 있습니다 녹화 모델과 SlideDeck 모델 :

class Presentation < ActiveRecord::Base 

has_one :recording 
has_one :slide_deck 

end 

나는 사용자가 프리젠 테이션을 기록하고 그 기간을 통해 슬라이드를 추가 할 수있는 플래시 구성 요소가 있습니다. 사용자가 프리젠 테이션 작성 및 편집을 완료하면 저장을 클릭합니다. 나는 프레젠테이션에 중첩 된 자원으로 녹음과 SlideDeck를 작성하기 위해 필요한이 시점에서

. 즉, 하나의 양식에서 두 개의 모델을 작성해야합니다. 이 페이지 앉아해야하는 위치

내 질문은? 구성 요소가 녹음 만하는 경우에는 recording_controller의 새 작업에서 페이지가 렌더링되고 SlideDeck 만 만드는 경우 새 slide_deck_controller에서 페이지가 렌더링됩니다. 그러나이 경우 나는 동시에 두 가지를 만들고 있습니다.

따라서 구성 요소는 살아야한다? presentation_controller에 대한 액션에 의해 렌더링되어야 하는가? 다른 편집 작업? 이 페이지에서는 중첩 된 리소스를 만들어 프레젠테이션을 편집 할 수 있습니다.

+0

이 소리는 PresentationsController # new와 #create로 들어갑니다. –

+0

@RobDavis 감사합니다. 그것은 2 가지 문제를 제외하고는 의미가 있습니다. 1. 프리젠 테이션을 레코딩과 독립적으로 만들 수 있기를 원합니다. 2. 사용 편의성 관점에서 프레젠테이션 작성/편집 작업 사이에 일종의 분리가 필요합니다. 이름, 설명 등 및 레코딩 작업/녹음 및 슬라이드 덱 편집. 이 두 가지 작업이 별도의 페이지에 있어야하므로 PresentationsController에서 별도의 작업으로 녹음/편집 작업을 처리하는 데 문제가 있습니까? – Undistraction

답변

0

나는 당신이 프레젠테이션에 그 정보를 모두 추가 할 수있는 것보다가, 프리젠 테이션 모델 nested_attributes의 일부가되어야 생각 중

+0

감사합니다. 나는 동의한다. 녹음이 저장되면 데이터를 커밋하는 가장 좋은 방법이지만 플레이어가 어디에 있어야합니까? 페이지를 렌더링해야하는 작업은 무엇입니까? – Undistraction

1

일반적으로, PresentationController 번호 편집 (및 해당 #UPDATE)를 만들거나 업데이트 작업 'Presentation'모델을 수정하는 데 사용됩니다. #edit 및 해당 #update가 이미 있고 별도의 작업으로 레코딩을 만들려면 다른 액션 쌍을 만들어야합니다. 또 다른 옵션은 #update를 "일반 편집"과 "녹음 작성"을 처리 할만큼 충분히 일반화 할 수 있다는 것입니다. 이 경우 #edit 및 #record 작업 모두 #update action에 양식을 제출할 수 있습니다.