我是Yii2的新手,我想知道如何在ActiveRecord中访问关系表的值
例如,我们有以下两种模型:
供应商有很多产品
产品有一个供应商
class Supplier extends ActiveRecord{
public function getProducts(){
return $this->hasMany(Product::className(),["supplier_id"=>"id"]);
}
public static function tableName(){
return 'supplier';
}
}
class Product extends ActiveRecord
{
public function getSupplier(){
return $this->hasOne(Supplier::className(),['id'=>'supplier_id']);
}
public static function tableName()
{
return 'product';
}
}
要访问产品数据,我使用以下代码行
$product=Product::find()->joinWith('supplier')->all();
var_dump($product);
该代码正确地为我提供了产品表的数据,但是我无法访问供应商数据值,为什么?如何访问联接表的值?
最佳答案
如果要访问联接数据,请使用asArray():
Product::find()->joinWith("supplier")->asArray()->all();
关于php - Yii2访问联接表列,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35156019/