Yii2活动记录查询返回声明的变量,而不是表属性
为什么当我从模型中检索记录时,它会返回我声明的变量,而不是表中的字段 这是我的控制器功能Yii2活动记录查询返回声明的变量,而不是表属性,yii2,yii2-advanced-app,Yii2,Yii2 Advanced App,为什么当我从模型中检索记录时,它会返回我声明的变量,而不是表中的字段 这是我的控制器功能 public function actionGetsp() { //$sp_id=$_POST['sp_id']; $model = TblSubProject::find()->select('sp_title, brgy_code')->all(); return json_encode($model); } 这是我模型的一部分 clas
public function actionGetsp()
{
//$sp_id=$_POST['sp_id'];
$model = TblSubProject::find()->select('sp_title, brgy_code')->all();
return json_encode($model);
}
这是我模型的一部分
class TblSubProject extends \yii\db\ActiveRecord
{
public $province;
public $region;
public $city_code;
/**
* @inheritdoc
*/
public static function tableName()
{
return 'tbl_sub_project';
}
/**
* @inheritdoc
*/
public function rules()
{
return [
[['city_code','brgy_code', 'sp_id', 'sp_title', 'sp_grant', 'lcc', 'modality'], 'required'],
[['sp_id'], 'integer'],
[['sp_grant', 'lcc'], 'number'],
[['brgy_code'], 'string', 'max' => 9],
[['sp_title'], 'string', 'max' => 500],
[['modality'], 'string', 'max' => 50],
[['sp_id'], 'unique']
];
}
/**
* @inheritdoc
*/
public function attributeLabels()
{
return [
'brgy_code' => 'Brgy Code',
'sp_id' => 'Sp ID',
'sp_title' => 'Sp Title',
'sp_grant' => 'Sp Grant',
'lcc' => 'Lcc',
'modality' => 'Modality',
'city_code' => 'City / Municipality',
'brgy_code' => 'Barangay',
'brgyCode.cityCode.province.prov_name' => 'Province',
'brgyCode.cityCode.city_name' => 'City / Municipality',
'brgyCode.brgy_name' => 'Barangay',
];
}
}
下面是示例输出
可以说,它返回省、地区和城市代码,这些代码不是表中的属性,只是声明的变量。我想检索像si_标题一样的内容
这是Yii ActiveRecord的正常行为-它用声明的属性替换表属性。您不必声明它们:所有表字段都已作为$model->$field提供。实际上我是通过ajax调用该操作的。。当我执行
$model->$field.
时,它会显示“尝试获取非对象的属性”