if ($model->validate()) {
///здесь ваш код
$model->save()
пишем данные, закрываем модалку
} else {
выводим результат валидации (рендерим аякс? или встроенная валидация?)
}
}
if ($model->load(Yii::$app->request->post()) && $model->validate()) {
///code
$model->save()
}
Вопрос: как мне в контроллере проверить, что была нажата кнопка Save в форме?
$customer = Customer::findOne(123);
$order = new Order();
$order->subtotal = 100;
// ...
// установка атрибута, которой задаёт связь "customer" в объекте Order
$order->customer_id = $customer->id;
$order->save();
if($model->load(Yii::$app->request->post()) && $address->load(Yii::$app->request->post())){
$transaction = Yii::$app->db->beginTransaction();
try {
if ($model->save()) {
$address->user_id = $model->id
Yii::$app->session->setFlash('success', 'Model save');
$address->save();
$transaction->commit();
Yii::$app->session->setFlash('success', 'User added');
return $this->refresh();
} else {
$transaction->rollBack();
Yii::$app->session->setFlash('error', 'Data error');
}
} catch (Exception $e) {
$transaction->rollBack();
Yii::$app->session->setFlash('error', 'Data error2222');
}
}
$customer = Customer::findOne(123);
$order = new Order();
$order->subtotal = 100;
// ...
$order->link('customer', $customer);
if($model->load(Yii::$app->request->post()) && $address->load(Yii::$app->request->post())){
$transaction = Yii::$app->db->beginTransaction();
try {
if ($model->save()) {
$address->link('nameRelationModel', $model)
Yii::$app->session->setFlash('success', 'Model save');
$address->save();
$transaction->commit();
Yii::$app->session->setFlash('success', 'User added');
return $this->refresh();
} else {
$transaction->rollBack();
Yii::$app->session->setFlash('error', 'Data error');
}
} catch (Exception $e) {
$transaction->rollBack();
Yii::$app->session->setFlash('error', 'Data error2222');
}
}
$models = $query->offset($pages->offset)
->limit($pages->limit)
->all();
<?php
use yii\helpers\Html;
/* @var $this yii\web\View */
/* @var $content string */
?>
<?php $this->beginPage() ?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8"/>
<?= Html::csrfMetaTags() ?>
<title><?= Html::encode($this->title) ?></title>
<?php $this->head() ?>
</head>
<body>
<?php $this->beginBody() ?>
<header>Моя компания</header>
<?= $content ?>
<footer>Моя компания © 2014</footer>
<?php $this->endBody() ?>
</body>
</html>
<?php $this->endPage() ?>
\dmstr\web\AdminLteAsset::register($this);
yii migrate 1
yii migrate/to 150101_185401 # используя временную метку определяющую миграцию
yii migrate/to "2015-01-01 18:54:01" # используя строку, которая может быть получена путем использования функции strtotime()
yii migrate/to m150101_185401_create_news_table # используя полное имя
yii migrate/to 1392853618 # используя временную метку UNIX
public function getFullName(string $separator = ' '): string
{
return implode($separator, array_filter([
$this->firstName,
$this->middleName,
$this->lastName
]));
}
'value'=> function($model) {
return $model->first_name .' '. $model->last_name
}
user.fullName
//или
$user->getFullName(', ')
Вызов неизвестного метода: yii \ console \ Application :: getSession () '
[
'label' => 'Executive Name',
'attribute' => 'cs.first_name',
'visible' => function ($data) {
if ($data->hc_customersupport->is_supervisor) {
return '1'; // or return true;
} else {
return '0'; // or return false;
}
},
],
use Yii;
...
'visible' => Yii::$app->user->can('supervisor'),