2012-10-16 2 views
2

두 모델을 트랜잭션에 저장하려고하지만 둘 이상의보기에서 사용됩니다.MVC 패턴 트랜잭션에서 둘 이상의 모델을 저장하는 일반적인 방법

해당 거래 중 하나에 해당 거래를 넣어야합니까? 아니면 어떻게 든 컨트롤러 동작을 재사용해야합니까?

이 경우 MVC 패턴의 모범 사례는 무엇입니까?

참고 : 내보기는 두 개 이상의 모델로 구성됩니다.

+0

나는 항상 내 거래 내역을 컨트롤러에 보관합니다. 때로는 여러 가지를 함께 사용해야합니다. – wesside

+0

그러나 같은 트랜잭션의 코드를 DRY가 아닌 여러 컨트롤러에 복사해야하므로이 작업은 다른 (더 나은) 방법이 있다는 느낌이 들기 때문에 이것이 정확하게 문제가됩니다. – user1750290

+0

두 곳에서 동일한 기능을 사용하는 경우 하나의 컨트롤러/동작을 사용할 수 있고 사용해야합니다. –

답변

1

귀하의 비즈니스 로직에 따라 모델 A를 저장할 때마다 모델 B도 업데이트/생성되어야한다는 점에 따라 다릅니다. 그런 다음 트랜잭션을 모델에 넣으십시오. 따라서 컨트롤러를 호출하는 위치 (컨트롤러, CLI)에 관계없이 논리에 그대로 적용됩니다.

이 트랜잭션은 현재 사용자 요청에 중요한 것입니다. 그런 다음 컨트롤러에 입력하십시오.

이 시점에서보기는 관련이 없으므로보기에 원하는 수의 모델을 가질 수 있습니다. 그것은 당신의 비즈니스 로직과 아무 관련이 없습니다.

관련 문제