2016-07-21 25 views
1

Ich importiere Excel mit Spaltennamen Vorname, Nachname und Benutzername. Der Benutzername ist in der db- und in der Modellvalidierung einmalig. Ich versuche, Excel zu importieren, das 2 Reihe mit demselben Benutzernamen hat.yii2 Excel-Import mit dem Plugin arogachev

Es wirft unter Fehler:

SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '[email protected]' for key 'username'

Aber dieser Fehler soll nicht kommen, wie vor Excel Import gibt es keinen solchen Wert in DB. Und die Modellvalidierung sollte doppelten Wert erkennen. Bitte

helfen

+0

bitte geben Sie Ihren Controller Code – vishuB

+0

ich denke 'bestätigen $ modell-> validate()' 'vor $ modell-> save()' in der Steuerung. – vishuB

+0

Ich bin Validierung vor dem Speichern. Tatsächlich funktioniert die Validierung. Wenn ich das Blatt mit dem bereits in der Datenbank vorhandenen Datensatz importiere, wird in der Tat ein Validierungsfehler angezeigt. Aber es funktioniert nicht, wenn es im Excel Sheet die selbe User-Zeile gibt. – Ish

Antwort

1

Es stellte sich heraus, dass es einen Fehler in Grund Import mit dieser Art der Validierung war, weil die Validierung durchgeführt werden muss, nachdem die Vorgängermodelle gespeichert wurden.

Ich reparierte das und veröffentlichte neue Version.

Bitte aktualisieren Sie auf die neueste Version Befehl:

composer update arogachev/yii2-excel 
+1

Das neue Update löst das Problem. – Ish