2014-12-22 2 views
2

전자 메일을 보내기위한 AdminController 내에 함수가 있습니다. 나는 다른 컨트롤러 내에서 이것을 액세스하려고합니다. 아무도 내가 이것을 수정하는 방법을 조언 할 수 있습니까?Laravel 4의 다른 컨트롤러에서 함수에 액세스

OrdersController가

public function postOrder() 
{ 
    $order = New Order; 
    ... 
    $order->save(); 
    // email order (call function in other controller) 
    $this->emailOrder($order); 
} 

AdminController

public function emailOrder($order) 
{ 
//email processing goes here 
} 

답변

1

당신은 당신의 컨트롤러에서 상속, 추상 컨트롤러에 하나, 그것을 밖으로 제거합니다 :

class AdminController extends MyController 

또는 서비스에 그 당신은 당신의 컨트롤러에서 전화 할 수 있습니다 :

Mail::sendOrder($order) 
+0

고맙습니다.이 문제를 처리 할 도우미 클래스를 설정했지만 'Undefined variable : order'오류가 발생합니다. 이 서비스는 ($ 주문)을 받기 위해 설정됩니다. – Suba

+0

나는 모두 잘 돌아가고있다. 내 메서드는 private 대신 private static으로 설정되었습니다. 도와 줘서 고마워. – Suba

관련 문제