Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Laravel - Integritätsbeschränkungsverletzung:1452 Kann keine untergeordnete Zeile hinzufügen oder aktualisieren:eine Fremdschlüsselbeschränkung schlägt fehl

Die create Methode erstellt und speichert eine neue Instanz Ihres Modells. Da das Modell an diesem Punkt die Benutzer-ID nicht enthält, schlägt es fehl.

Sie könnten das beheben, indem Sie user_id hinzufügen in das Fillables-Array Ihres Modells und fügen Sie auch die Benutzer-ID zu $validatedData hinzu -Array, bevor Sie das Modell erstellen.

Alternativ können Sie auch mit dem new eine neue Instanz Ihres Modells erstellen Schlüsselwort eingeben, alle Daten einstellen und am Ende explizit speichern:

$article = new Article($validatedData);
$article->user()->associate( Auth::user() );
$article->save();