Heim > Artikel > PHP-Framework > Was soll ich tun, wenn yii2 die Aktualisierungsdaten nicht speichern kann?
Die Lösung für den Fehler beim Speichern von Aktualisierungsdaten durch yii2: Suchen und öffnen Sie zuerst die ursprüngliche Skriptdatei, die den Fehler verursacht hat, und fügen Sie dann Validierungsregeln für neue Felder in „Regeln“ in der Modellklasse hinzu oder setzen Sie das Feld auf „; sicher".
YII2 konnte die Daten nicht aktualisieren
Ursache:
CLI-Modus, geplante Aufgabe. Synchronisieren Sie DB-Daten in anderen Systemen über Ansichten.
Empfohlen: „yii-Tutorial“
Prozess:
Das ursprüngliche Skript wurde geschrieben und basierend auf den vorhandenen geändert neue Felder hinzugefügt.
Nach dem Hinzufügen des Feldes wurde es ausgeführt, war jedoch immer erfolglos. Die in der Tabelle erfasste Zeit konnte ebenfalls erfolgreich aktualisiert werden, jedoch konnte nur das neu hinzugefügte Feld nicht aktualisiert werden.
Der Versuch, $model->validate()-Ergebnisse auszudrucken, ist in Ordnung. $model->save() gibt ebenfalls true zurück. $model->errors() gibt leer zurück. Alles ist in Ordnung.
Plötzlich fiel mir ein, dass die neu hinzugefügten Felder nicht zur Modellklasse hinzugefügt wurden, also habe ich sie in $model->save(false) geändert, um die Überprüfung zu deaktivieren. Immer noch erfolglos.
Lösung:
Validierungsregeln für neue Felder zu den Regeln in der Modellklasse hinzufügen oder das Feld auf sicher setzen.
Zusammenfassung:
Was für ein Cheat. Früher war „save(false)“ in Ordnung, aber dieses Mal funktioniert es nicht. .
Die Analyse sollte ein grammatikalisches Problem sein. Diesmal lautet die Datenzuweisungsmethode
$info->attributes = $data;
Das obige ist der detaillierte Inhalt vonWas soll ich tun, wenn yii2 die Aktualisierungsdaten nicht speichern kann?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!