我在我的模型PatientDetail.php中创建了一个函数。
此功能运行良好并返回所需的值,但我无法在数据库中保存相同的内容。
public function getRoomCategory(){
$model = \app\models\RoomCategory::find('id')
->innerJoin('room_charges','room_charges.room_category=room_category.id')
->innerjoin('patient_detail', 'room_charges.id = patient_detail.bed_type')
->Where(['patient_detail.id'=> $this->id])->one();
return $model;
}
我在模型中有一个字段/列为'room_category',我想在数据库中保存函数getRoomCategory
的返回值。
我尝试创建与getroom_category(){}
相同名称的函数,但是我在_form.php中的表单字段中没有得到任何值
我也在我的控制器中尝试过:
if(isset($_POST['RoomCategory'])){
$RoomCategory = $_POST['RoomCategory'];
$model->room_category=$RoomCategory;
$model->save();
}
将计算值保存到数据库的最佳方法是什么? 感谢您的宝贵指导。
答案 0 :(得分:0)
似乎模型的规则验证不允许您保存它,所以如果你想保存而不进行验证,你可以这样做:
if(isset($_POST['RoomCategory'])){
$RoomCategory = $_POST['RoomCategory'];
$model->room_category=$RoomCategory;
$model->save(false);
}