2017-12-31 132 views
1

새 사용자를위한 carts 테이블에 행을 만들려고합니다. 이런 이유로 UserRegistered (이벤트) 클래스와 CreateNewCart (리스너) 클래스를 만들었습니다.Laravel-5.5 이벤트 리스너가 작동하지 않습니다.

나는 워드 프로세서를 읽고 일부 유튜브 비디오를보고 나서 그들이 한 것을 시도했다. 하지만 나를 위해 일하지 않았다 ..

이벤트; public $ user;

public function __construct(User $user) 
{ 
    $this->user = $user; 
} 

리스너;

public function handle(RegisteredUser $event) 
{ 
    Cart::insert 
    ([ 
     'user_id' => $event->user->id 
    ]); 
} 

사용자 모델;

protected $events = [ 
    'created' => Events\RegisteredUser::class 
]; 

어디서 실수하나요? 어떻게 해결할 수 있습니까? 5.5

답변

0

당신은 $events 대신 $dispatchesEvents 속성을 사용해야합니다

protected $dispatchesEvents = [ 
    'created' => Events\RegisteredUser::class 
]; 

또한, you've registered the event and listener을 확인하십시오.

+1

작동합니다. "이벤트"문서에서 $ dispatchesEvents를 보지 못했습니다. 그래서 알지 못했습니다. 귀하의 답변에 감사드립니다. 그리고 새해 복 많이 받으세요 :) –

+0

새해 복 많이 받으십시오.) –