Die Lösung für den yii2 hasone-Fehler: Öffnen Sie zuerst die entsprechende Datei gemäß der Dokumentation und ändern Sie dann die Anweisung in „function getUser(){return $this->hasOne(User::className...“ )}" das ist Can.
yii2 hat einen Arbeitsfehler in einer Beziehung
Spezifisches Problem:
Ich habe 2 Tabellen: Benutzer und Favoriten:
users table favorite
Jetzt habe ich eine Beziehung im Modell „Favoriten“, wie unten gezeigt
public function getUser() { return $this->hasOne(User::className(), ['id', 'user_favorited']); }
Im Controller habe ich die Liste der Benutzerfavoriten <🎜 gefunden >
public function actionGetList() { $favorite = Favorite::find()->where([ 'user_favoriting' => Yii::$app->user->id ])->all(); foreach ($favorite as $key => $item) { # code... echo "<pre class="brush:php;toolbar:false">"; var_dump($item->user); echo "<br/>"; die('123'); } return $favorite; }
Column not found: 1054 Unknown column '0' in 'where clause'\nThe SQL being executed was: SELECT * FROM `users` WHERE (`0`, `1`) IN ((12, 80))",
yii-Tutorial“
Lösung:
Laut Dokumentation müssen Sie Folgendes verwenden:
public function getUser() { return $this->hasOne(User::className(), ['id' => 'user_favorited']); }
Das obige ist der detaillierte Inhalt vonWas soll ich tun, wenn yii2 hasone einen Fehler meldet?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!