У меня такая проблема что выводит ошибка Setting unknown property: app\models\Financy::2900
При моем адресе
http://crm/personnel/calculate?id=1∑=2900&wage=380...
В views
<?= Html::a('Расчитать', ['calculate', 'id' => $modelPersonnel->id, 'sum' => round($sumWage,2), 'wage' => round($wage,2), 'name' => $modelPersonnel->nameSotrud], ['class' => 'btn btn-primary']) ?>
В контроллере
public function actionCalculate($id, $sum, $wage, $name)
{
$model = new Payroll();
$financy = new Financy();
$financy->scenario = 'employee';
/** Payroll models */
$model->personnel_id = $id;
$model->sum = $sum-$wage;
/** Financ models */
$financy->$sum = $sum;
$financy->id_employee = $id;
$financy->category = Financy::SALARY;
$financy->comment = 'Расчет зарплаты '.$name;
$financy->save();
$model->save();
Yii::$app->session->addFlash('update', 'Произведен расчет '.$model->sum);
return $this->redirect(['view', 'id' => $id]);
}
В моделе которой ошибка выводит следующая структура
public function rules()
{
return [
[['sum'], 'required', 'on' => 'default'],
[['category', 'sum', 'comment'], 'required', 'on' => 'employee'],
[['id_zakaz', 'id_user', 'id_employee', 'category'], 'integer'],
[['date'], 'safe'],
['sum', 'filter', 'filter' => function($value){
return str_replace(' ', '', $value);
}],
[['comment'], 'string'],
['sum', 'compare', 'compareValue' => $this->amount, 'operator' => '<=', 'type' => 'number', 'on' => 'default'],
[['id_user'], 'exist', 'skipOnError' => true, 'targetClass' => User::className(), 'targetAttribute' => ['id_user' => 'id']],
[['id_zakaz'], 'exist', 'skipOnError' => true, 'targetClass' => Zakaz::className(), 'targetAttribute' => ['id_zakaz' => 'id_zakaz']],
];
}
Или лучше данные передавать скрытой формой?