2012-07-15 2 views
0

A 엔티티를 만들 때마다 새로운 엔티티 B을 만들어야합니다. 이렇게하려면 의 메서드 안에 B.create에 대한 호출을 추가하려고 시도했습니다. 하나의 컨트롤러를 사용하여 2 개의 다른 엔티티 만들기 .create

Missing template a/create 

그래서 내 질문은 : 어떻게이 A.create 컨트롤러에서 엔티티 B을 만들려면 어떻게해야합니까 그러나 이것은 오류를 준다?

답변

2
+0

뭔가를 여기 더 읽기 - 당신의 객체가 '관련'하는 경우

def create @A = A.new(params[:a]) @B = B.new(params[:b]) respond_to do |format| if @A.save && @B.save format.html { redirect_to @A, :notice => 'A was successfully created.' } else # render new with validation errors format.html { render :action => "new" } end end end 

하지만, 즉 has_many 또는 다음 belongs_to 당신이 뭔가 같은

# project has_many tasks def create @project = Project.new(params[:project]) @project.tasks.new(params[:task]) if @project.save # this should save both objects and in the same transaction .... end 

와 세 번째 옵션을 할 수 있습니다은 accepts_nested_attributes_for 사용하는 것입니다 그게 정확히! 감사! – Michael

관련 문제