Laravel 5.4: "필드에 기본값이 없습니다." 오류
문제:
"'user_id' 필드에 기본값이 없습니다.라는 오류가 표시됩니다. 거래 개체를 통해 새 일치 개체를 생성하려고 할 때 "값"이 발생합니다. Match 클래스의 $guarded 배열이 빈 배열로 설정되어 있지만 이로 인해 문제가 해결되지 않습니다.
해결책:
오류는 다음의 데이터베이스 테이블이 match에는 user_id 열에 null이 아닌 값이 필요합니다. 이 문제를 해결하려면 보호된 필드 대신 채울 수 있는 필드를 지정하도록 Match 클래스를 업데이트하세요.
protected $fillable = ['user_id', 'deal_id'];
설명:
Laravel에서는 기본적으로 모든 필드가 보호됩니다. 즉, 대량으로 할당할 수 없습니다. 이는 보안 취약점을 방지하기 위한 것입니다. 채울 수 있는 배열을 정의하면 대량 할당할 수 있는 필드를 지정하게 됩니다. 이 경우 user_id 및 deal_id 필드는 새 Match 개체를 생성할 때 설정할 수 있는 유일한 필드입니다.
보호된 배열 대신 채울 수 있는 배열을 사용하면 user_id 필드를 설정할 수 있습니다. 새로운 매치를 생성할 때. 이렇게 하면 오류가 해결되고 새 매치를 성공적으로 생성할 수 있습니다.
위 내용은 일치 개체를 생성할 때 Laravel 5.4에서 '필드에 기본값이 없습니다' 오류가 발생하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!