안녕하세요 "CartSeeder"로 데이터베이스 시더를 만들었지 만 시드를 시작하지 못하면 오류가 발생합니다. 코드를 여러 번 확인했지만 괜찮은 것 같습니다.Laravel-5.5 Null 오류 (다 대다 관계)에서 멤버 함수 제품 호출
세 개의 테이블, 카트, 제품 및 피벗 테이블이 있습니다. 나는 그들의 모델을 가지고있다. 아래에있는 정보를 볼 수 있습니다.
CartSeeder;
$cart = Cart::where('user_id',\Auth::id())->first();
$products = Product::inRandomOrder()->take(5)->get();
$cart->products()->sync($products,false);
장바구니
public function products(){
return $this->belongsToMany('App\Product','cart_product','cart_id','product_id');
}
[제품 모델]
public function carts(){
return $this->belongsToMany('App\Cart','cart_product','product_id','cart_id');
}
여기에서 실수를 할 수 있습니까?
즉, 로그 된 사용자가 보이지 않는 것을 볼 수 있습니다. (즉, 'user_id', \ Auth :: id()) -> first(); http 요청? –
@cervantes 네, 그렇게 할 수 없습니다. 이 명령을 동적으로 실행하는 경우에는'auth() -> id()'를 시드 매개 변수 또는 다른 것으로 전달할 수 있습니다. –