Class hasOne 中的动态名称不起作用
Class name dynamically in hasOne not working
public function getResource() {
return $this->hasOne(User::className(), ['id' => 'resource_id']);
}
这个功能工作正常但是当我使用这个
public function getResource() {
$model = ucfirst($this->resource_type);
return $this->hasOne($model::className(), ['id' => 'resource_id']);
}
它给我错误 "Class 'User' not found"。
谢谢
如果动态指定,则必须使用包含名称空间的名称。
public function getResource() {
$model = "api\models\".ucfirst($this->resource_type);
return $this->hasOne($model::className(), ['id' => 'resource_id']);
}
public function getResource() {
return $this->hasOne(User::className(), ['id' => 'resource_id']);
}
这个功能工作正常但是当我使用这个
public function getResource() {
$model = ucfirst($this->resource_type);
return $this->hasOne($model::className(), ['id' => 'resource_id']);
}
它给我错误 "Class 'User' not found"。 谢谢
如果动态指定,则必须使用包含名称空间的名称。
public function getResource() {
$model = "api\models\".ucfirst($this->resource_type);
return $this->hasOne($model::className(), ['id' => 'resource_id']);
}