2016-05-05 9 views
0

Hallo, ich habe eine Frage zu Yii2 hat viele.Yii2 hat viele oder wo

Meine Tabellenstruktur:

------------------------- 
----col1------col2------- 

------3---------4-------- 

------4---------1-------- 

und ich habe jetzt Methode in meiner Modellklasse:

getCols(){ 
    return $this->hasMany(Cols::className,['col1'=>'id']); 
} 

und jetzt will ich alle Datensätze erhalten, wo zum Beispiel col1 = 4 oder col2 = 4 , also wie kann ich setzen oder Aussage? Ich weiß, dass ich

getCols(){ 
    return $this->hasMany(Cols::className,['col1'=>'id','col2'=>'id']); 
} 

tun können, aber diese Methode gibt mir Aufzeichnungen zum Beispiel, wo col1 = 4 und col2 = 4

Grüße

Antwort

0

Wenn ich Sie richtig verstanden hat. Bitte bestätigen Sie, ob es funktioniert.

getCols(){ 
    return $this->hasMany(Cols::className(), ['col1' => 'id']) 
    ->orOnCondition(['col2' => 'id']); 
}  

REF1: How to use constant in the ON condition in Yii2 hasMany relation

REF2: http://www.yiiframework.com/doc-2.0/yii-db-activequery.html#orOnCondition()-detail

+0

ich das ausprobiert und funktioniert nicht –

+0

ich die Antwort aktualisieren können Sie diese Vorgehensweise überprüfen funktioniert? –

Verwandte Themen