Максим
плюсую, вот ларка бы взяла!
срочно переписать все на ларку!
Максим
article_id дургой таблице
ты делаешь $model->save() а потом в эту же $model->article_id вставляешь id из этой же таблицы
Дмитрий
Ты определись с задачей уже
Shokha
👻
😂
Павел
Все на субботник!
Павел
Посадить по одному миддлвару на симфони
Javharbek
line:13 $id =$_GET['id'];
Павел
И убрать за собой мусор
Rich
о, гет айди приплыло
Максим
только откуда оно в create экшене возьмется
Javharbek
public function actionCreate($id) { $upload = new UploadForm(); $model = new Image(); // $id shu id qatdan kevotti etib bera olasizmi? $model->article_id = $id ; if ($model->load(Yii::$app->request->post()) && $model->save()) { //$model->article_id =Yii::$app->db->lastInsertID(); $upload->imageFile = UploadedFile::getInstance($upload, 'imageFile'); $strtotime = strtotime(date('Y-m-d H:i:s')); $model->img_name = $strtotime . '.' . $upload->imageFile->extension; if($model->save() && $upload->upload($strtotime)) { return $this->redirect(['view', 'id' => $model->id]); } else { return $this->render('create', [ 'model' => $model, 'upload' => $upload, ]); } } return $this->render('create', [ 'model' => $model, 'upload' => $upload, ]); }
Rich
это просто вот
Rich
Kairzhan
[['price'],'unique','targetAttribute' => ['torgId','price' ]]
Javharbek
в параметры функции напиши id и он будет брать от гет запроса. и всё нечего больше можеж не менять всё заработает
Kairzhan
это что-то не работает.
Shokha
это просто вот
я так делал не поучилос тоже
Максим
[['price'],'unique','targetAttribute' => ['torgId','price' ]]
[['torgId','price'],'unique','targetAttribute' => ['torgId','price' ]]
Javharbek
А вон тот код $_GET код убери зачем тогда фреймворк используешь.
Павел
я так делал не поучилос тоже
Не делай так больше
Максим
неа, не работает
в чем это выражается? какие ошибки вертает?
Rich
А вон тот код $_GET код убери зачем тогда фреймворк используешь.
и плюс в некоторых случаях чистое его использование без проверок может приводить к ошибкам
Максим
покажи код, который сохраняет данные
Максим
save(false) :)
тоже есть такое подозрение)
Roman
а почему на БД нет unique?
Kairzhan
$newRequest = new \common\models\Request(); $newRequest->setAttributes($oldRequest->getAttributes()); $newRequest->parent = $oldRequest->id; $newRequest->price = $newPrice; $newRequest->num = $totalRequestCount + 1; if ($newRequest->validate()) { $newRequest->save(); $oldRequest->status = 2; $oldRequest->save(); }
Kairzhan
а почему на БД нет unique?
правила не работают без уникальности?
Kairzhan
без сценариев
Kairzhan
public function rules() { return [ .... [['price','torgId'],'unique','targetAttribute' => ['price','torgId', ]] ]; }
👻
тут походу не совсем то
Roman
правила не работают без уникальности?
не работают, когда кто-то другой подключается из другого приложения и пишет в эту таблицу лабуду
Максим
а где в сохранении torgId?
Roman
а где в сохранении torgId?
из предыдущего запроса
Roman
нафига тогда правила создавать на уникальность
выводить красиво в интерфейсе приложения ошибки
Kairzhan
public function rules() { return [ [['created_at','num', 'updated_at', 'torgId', ], 'integer'], [['price','volume','volume_min','millisec','final_volume'], 'number'], [['dealnum'],'string'], [['orgId'], 'exist', 'skipOnError' => true, 'targetClass' => Organization::className(), 'targetAttribute' => ['orgId' => 'id']], [['torgId'], 'exist', 'skipOnError' => true, 'targetClass' => Torg::className(), 'targetAttribute' => ['torgId' => 'id']], [['userId'], 'exist', 'skipOnError' => true, 'targetClass' => User::className(), 'targetAttribute' => ['userId' => 'id']], [['price','torgId'],'unique','targetAttribute' => ['price','torgId', ]] ]; }
Roman
не разбирая ошибку Contraint от БД
Максим
а принтани, что в модели после сохранения
Kairzhan
момент
Kairzhan
записал в лог две заявки
Kairzhan
так стоп
Kairzhan
а почему айдишники одинаковые
Kairzhan
не то принтанул
Максим
не то принтанул
либо то, и нашел ошибку)
Kairzhan
2018-04-24 18:06:45 [127.0.0.1][86][-][info][trade] common\models\Request Object ( [_attributes:yii\db\BaseActiveRecord:private] => Array ( [created_at] => 1524571605 [updated_at] => 1524571605 [num] => 67 [volume] => 10.333 [parent] => 66 [torgId] => 117 [price] => 8.56 [ground] => 0 [connection] => 0 [garant] => 1 [status] => 0 [orgId] => 46 [userId] => 86 [tempStatus] => [dealnum] => [millisec] => 6293 [priznak] => 0 [volume_min] => 10.1 [final_volume] => 0 [project] => 1 [id] => 68 )
Kairzhan
2018-04-24 18:06:47 [127.0.0.1][86][-][info][trade] common\models\Request Object ( [_attributes:yii\db\BaseActiveRecord:private] => Array ( [created_at] => 1524571607 [updated_at] => 1524571607 [num] => 68 [volume] => 10.333 [parent] => 66 [torgId] => 117 [price] => 8.56 [ground] => 0 [connection] => 0 [garant] => 1 [status] => 2 [orgId] => 46 [userId] => 86 [tempStatus] => [dealnum] => [millisec] => 1555 [priznak] => 0 [volume_min] => 10.1 [final_volume] => 0 [project] => 1 [id] => 69 )
Kairzhan
разница 2 сек
Максим
и при этом валидация не ругается?
Kairzhan
нет
Kairzhan
if ($newRequest->validate()) { $newRequest->save(); $requestItem->status = 2; $requestItem->save(); Yii::info(print_r($newRequest, true),'trade');
Kairzhan
вот делаю валидацю потом сохраняю потом принт
Kairzhan
может баг нашел ыыы. так как цена у нас number (float)
Kairzhan
не знаю уже . почему не работает. сейчас в дебаге запущу пройдут по всему
Kairzhan
вот сейчас в таблице есть
Kairzhan
Kairzhan
в дебагере в uniquivalidator
Kairzhan
Kairzhan
посттроил запрос. видите что есть значения для параметров
Kairzhan
Kairzhan
и выдает false
Kairzhan
Kairzhan
Kairzhan
че за *уйня
Максим
че за *уйня
это называется FLOAT