Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Laravel - Violação de restrição de integridade:1452 Não é possível adicionar ou atualizar uma linha filha:uma restrição de chave estrangeira falha


O create método cria e salva uma nova instância do seu modelo. Como o modelo não inclui o ID do usuário nesse ponto, ele falha.

Você pode corrigir isso adicionando user_id para o array fillables do seu modelo e também adicione o ID do usuário ao $validatedData array antes de criar o modelo.

Alternativamente, você também pode criar uma nova instância do seu modelo com o new palavra-chave, defina todos os dados e salve-os explicitamente quando terminar:
$article = new Article($validatedData);
$article->user()->associate( Auth::user() );
$article->save();